$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
From: emil_at_[hidden]
Date: 2008-09-02 19:20:50
Author: emildotchevski
Date: 2008-09-02 19:20:49 EDT (Tue, 02 Sep 2008)
New Revision: 48554
URL: http://svn.boost.org/trac/boost/changeset/48554
Log:
documentation update
Added:
   trunk/libs/exception/doc/BOOST_THROW_EXCEPTION.html   (contents, props changed)
Text files modified: 
   trunk/libs/exception/doc/source/boost-exception.reno |  3848 ++++++++++++++++++++--------------------
   1 files changed, 1924 insertions(+), 1924 deletions(-)
Added: trunk/libs/exception/doc/BOOST_THROW_EXCEPTION.html
==============================================================================
--- (empty file)
+++ trunk/libs/exception/doc/BOOST_THROW_EXCEPTION.html	2008-09-02 19:20:49 EDT (Tue, 02 Sep 2008)
@@ -0,0 +1,57 @@
+<!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>BOOST_THROW_EXCEPTION</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">
+
+</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"><div class="RenoAutoDIV"><h3>BOOST_THROW_EXCEPTION</h3>
+</div>
+<div class="RenoIncludeDIV"><p><span class="RenoEscape">#<!--<wiki>`#</wiki>--></span>include <<span class="RenoLink">boost/throw_exception.hpp</span>></p>
+<div class="RenoIncludeDIV"><pre>#if !defined( BOOST_NO_EXCEPTIONS ) && !defined( BOOST_EXCEPTION_DISABLE )
+    #include <<span class="RenoLink">boost/exception/exception.hpp</span>>
+    #include <boost/current_function.hpp>
+    #define <span class="RenoLink">BOOST_THROW_EXCEPTION</span>(x)\
+        ::boost::<span class="RenoLink">throw_exception</span>( ::boost::<span class="RenoLink">enable_error_info</span>(x) <<\
+        ::boost::<span class="RenoLink">throw_function</span>(BOOST_CURRENT_FUNCTION) <<\
+        ::boost::<span class="RenoLink">throw_file</span>(__FILE__) <<\
+        ::boost::<span class="RenoLink">throw_line</span>((int)__LINE__) )
+#else
+    #define <span class="RenoLink">BOOST_THROW_EXCEPTION</span>(x) ::boost::<span class="RenoLink">throw_exception</span>(x)
+#endif</pre>
+</div></div><p>This macro takes an exception object, records BOOST_CURRENT_FUNCTION, __FILE__ and __LINE__ in it, and forwards it to <span class="RenoLink">throw_exception</span>. To recover this information at the catch site, use <span class="RenoLink">get_error_info</span>; the information is also included in the message returned by <span class="RenoLink">diagnostic_information</span>.</p>
+</div><div class="RenoPageList"><a href="boost-exception.html">Boost Exception<br/>
+</a><a href="throw_exception_hpp.html">boost/throw_exception.hpp<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> </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: trunk/libs/exception/doc/source/boost-exception.reno
==============================================================================
--- trunk/libs/exception/doc/source/boost-exception.reno	(original)
+++ trunk/libs/exception/doc/source/boost-exception.reno	2008-09-02 19:20:49 EDT (Tue, 02 Sep 2008)
@@ -54,31 +54,31 @@
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
                                                                                                                                                         <size>2</size>
-																			<strong>9A4ECF9A49A73AED83C1565CB8C67AE1519E8AFE6818F968B4C4733CB9E86CEF</strong>
-																			<weak>1615599655</weak>
-																			<size>68</size>
-																			<position>227</position>
-																			<strong>34F0583BC8DE767CE2D79721E1F956895E43E5397473B1050F59BE7E26C773DB</strong>
-																			<weak>805836816</weak>
-																			<size>66</size>
-																			<position>1</position>
+																			<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>../../../../boost/exception/error_info.hpp</string>
+																		<string>../../../../boost/exception/info_tuple.hpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
-																<string>boost/exception/error_info.hpp</string>
+																<string>operator<</tuple</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
-																<string>exception_error_info_value_hpp</string>
+																<string></string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
@@ -103,27 +103,27 @@
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
                                                                                                                                                         <size>1</size>
-																			<strong>FC684D0DD5A9732B4130F2AB3DB6E0491D0F523E14B7FB738B2019EA2C7F8717</strong>
-																			<weak>2229778754</weak>
-																			<size>631</size>
-																			<position>319</position>
+																			<strong>187BFD2B78A0DD006717B5B06FFD465E2468F521C32A86FB793F7A68AB5417F3</strong>
+																			<weak>4276724153</weak>
+																			<size>574</size>
+																			<position>382</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
                                                                                                                                                 <empty>0</empty>
-																		<string>../../example/cloning_2.cpp</string>
+																		<string>../../example/error_info_1.cpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
-																<string>cloning and re-throwing an exception</string>
+																<string>adding of arbitrary data at the point of the throw</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
-																<string>cloning_and_rethrowing</string>
+																<string>adding_data_at_throw</string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
@@ -145,32 +145,36 @@
                                                                                                                                 <hook>
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
-																			<size>2</size>
-																			<strong>86E1196533E771AEFD141DA43FCD980AE3D7689A45EDD54A2DF28B1943E0E7DB</strong>
-																			<weak>941210061</weak>
-																			<size>8706</size>
-																			<position>487</position>
-																			<strong>0066D4E6E6B189906E6DE04F08509F3737511701A1B1355B37511EC18E8371F4</strong>
-																			<weak>2078296250</weak>
-																			<size>305</size>
-																			<position>8138</position>
+																			<size>3</size>
+																			<strong>50E48ABD58B427E16B2EFA345D5FE67159057CB90F19AA1AD52C11991FD8500E</strong>
+																			<weak>4076172629</weak>
+																			<size>8577</size>
+																			<position>323</position>
+																			<strong>2D32D2DE11DB8BDD6F34C94CC165ABEF4F4CCB2D119354FA05811534E2AF356F</strong>
+																			<weak>1002290201</weak>
+																			<size>1604</size>
+																			<position>3720</position>
+																			<strong>DA154372D8C23BD9EDC30005CA7959CE686D198891097A837D006B5222F04DE9</strong>
+																			<weak>2768248809</weak>
+																			<size>143</size>
+																			<position>60</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
                                                                                                                                                 <empty>0</empty>
-																		<string>../../../../boost/exception_ptr.hpp</string>
+																		<string>../../../../boost/exception/exception.hpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
-																<string>copy_exception</string>
+																<string>exception::exception</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
-																<string></string>
+																<string>exception_constructors</string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
@@ -194,32 +198,28 @@
                                                                                                                                 <hook>
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
-																			<size>2</size>
-																			<strong>E86977BC88F0D950B8FD02FC853FFC0D7230B26376B908037F3F4AF429FD9A4D</strong>
-																			<weak>557160971</weak>
-																			<size>1522</size>
-																			<position>433</position>
-																			<strong>25FBAAA29F300B32DF38832E0A102B8A4FAB726B5FAEE428B00DBD5D58D9BB16</strong>
-																			<weak>3475582031</weak>
-																			<size>1039</size>
-																			<position>477</position>
+																			<size>1</size>
+																			<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/diagnostic_information.hpp</string>
+																		<string>../../../../boost/exception/info_tuple.hpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
-																<string>diagnostic_information</string>
+																<string>boost/exception/info_tuple.hpp</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
-																<string></string>
+																<string>exception_error_info_group_hpp</string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
@@ -248,10 +248,10 @@
                                                                                                                                                         <weak>4076172629</weak>
                                                                                                                                                         <size>8577</size>
                                                                                                                                                         <position>323</position>
-																			<strong>DF9EA87B0140AACF4422F1B76F6A6A409C15F32858BBBA85A35981A824C56BA9</strong>
-																			<weak>1137981799</weak>
-																			<size>192</size>
-																			<position>8379</position>
+																			<strong>17E691632123EB67BA67D590B49EB8094F462F5A10A66A1C5438E1867EF1478E</strong>
+																			<weak>765399792</weak>
+																			<size>77</size>
+																			<position>5326</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
@@ -265,10 +265,10 @@
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
-																<string>enable_current_exception</string>
+																<string>exception::~exception</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
-																<string></string>
+																<string>exception_destructor</string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
@@ -293,28 +293,28 @@
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
                                                                                                                                                         <size>2</size>
-																			<strong>50E48ABD58B427E16B2EFA345D5FE67159057CB90F19AA1AD52C11991FD8500E</strong>
-																			<weak>4076172629</weak>
-																			<size>8577</size>
-																			<position>323</position>
-																			<strong>2D32D2DE11DB8BDD6F34C94CC165ABEF4F4CCB2D119354FA05811534E2AF356F</strong>
-																			<weak>1002290201</weak>
-																			<size>1604</size>
-																			<position>3720</position>
+																			<strong>86E1196533E771AEFD141DA43FCD980AE3D7689A45EDD54A2DF28B1943E0E7DB</strong>
+																			<weak>941210061</weak>
+																			<size>8706</size>
+																			<position>487</position>
+																			<strong>0066D4E6E6B189906E6DE04F08509F3737511701A1B1355B37511EC18E8371F4</strong>
+																			<weak>2078296250</weak>
+																			<size>305</size>
+																			<position>8138</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>
                                                                                                                         </hook>
                                                                                                                         <title>
-																<string>exception</string>
+																<string>copy_exception</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
                                                                                                                                 <string></string>
@@ -325,7 +325,7 @@
                                                                                                 <container>
                                                                                                         <size>1</size>
                                                                                                         <variant>2</variant>
-													<string>(:include include:)
----
!!!See Also:

(:pagelist link="backlink" except_tags="exception,member" mod="w":)
</string>
+													<string>(:include include:)
(:auto also:)
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -341,25 +341,29 @@
                                                                                                                                 <hook>
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
-																			<size>1</size>
-																			<strong>17FF6C63843EE64ED66CB038DD95B4C4D6BA1B0FD36B27BEFD84A909161D2853</strong>
-																			<weak>1237535165</weak>
-																			<size>231</size>
-																			<position>1255</position>
+																			<size>2</size>
+																			<strong>50E48ABD58B427E16B2EFA345D5FE67159057CB90F19AA1AD52C11991FD8500E</strong>
+																			<weak>4076172629</weak>
+																			<size>8577</size>
+																			<position>323</position>
+																			<strong>2D32D2DE11DB8BDD6F34C94CC165ABEF4F4CCB2D119354FA05811534E2AF356F</strong>
+																			<weak>1002290201</weak>
+																			<size>1604</size>
+																			<position>3720</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</string>
+																<string>exception</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
                                                                                                                                 <string></string>
@@ -370,7 +374,7 @@
                                                                                                 <container>
                                                                                                         <size>1</size>
                                                                                                         <variant>2</variant>
-													<string>(:include include:)
(:pagelist link="backlink":)
</string>
+													<string>(:include include:)
----
!!!See Also:

(:pagelist link="backlink" except_tags="exception,member" mod="w":)
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -386,29 +390,25 @@
                                                                                                                                 <hook>
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
-																			<size>2</size>
-																			<strong>86E1196533E771AEFD141DA43FCD980AE3D7689A45EDD54A2DF28B1943E0E7DB</strong>
-																			<weak>941210061</weak>
-																			<size>8706</size>
-																			<position>487</position>
-																			<strong>0E9DF8366080712A816BE91ABCEF1E2044145B63D75B0B995B537900F378189E</strong>
-																			<weak>1069696031</weak>
-																			<size>255</size>
-																			<position>8445</position>
+																			<size>1</size>
+																			<strong>17FF6C63843EE64ED66CB038DD95B4C4D6BA1B0FD36B27BEFD84A909161D2853</strong>
+																			<weak>1237535165</weak>
+																			<size>231</size>
+																			<position>1255</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>
                                                                                                                         </hook>
                                                                                                                         <title>
-																<string>rethrow_exception</string>
+																<string>BOOST_THROW_EXCEPTION</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
                                                                                                                                 <string></string>
@@ -419,7 +419,7 @@
                                                                                                 <container>
                                                                                                         <size>1</size>
                                                                                                         <variant>2</variant>
-													<string>(:include include:)
(:auto also:)
</string>
+													<string>(:include include:)
(:pagelist link="backlink":)
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -435,11 +435,15 @@
                                                                                                                                 <hook>
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
-																			<size>1</size>
+																			<size>2</size>
                                                                                                                                                         <strong>50E48ABD58B427E16B2EFA345D5FE67159057CB90F19AA1AD52C11991FD8500E</strong>
                                                                                                                                                         <weak>4076172629</weak>
                                                                                                                                                         <size>8577</size>
                                                                                                                                                         <position>323</position>
+																			<strong>DF9EA87B0140AACF4422F1B76F6A6A409C15F32858BBBA85A35981A824C56BA9</strong>
+																			<weak>1137981799</weak>
+																			<size>192</size>
+																			<position>8379</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
@@ -453,10 +457,10 @@
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
-																<string>boost/exception/exception.hpp</string>
+																<string>enable_current_exception</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
-																<string>exception_exception_hpp</string>
+																<string></string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
@@ -480,28 +484,32 @@
                                                                                                                                 <hook>
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
-																			<size>1</size>
-																			<strong>67D64FAD0AB7CA6B2173A14F363D19B27F59EEBDB5C1076F8BCCA1B54D4CCD7D</strong>
-																			<weak>2241687287</weak>
-																			<size>303</size>
-																			<position>323</position>
+																			<size>2</size>
+																			<strong>E86977BC88F0D950B8FD02FC853FFC0D7230B26376B908037F3F4AF429FD9A4D</strong>
+																			<weak>557160971</weak>
+																			<size>1522</size>
+																			<position>433</position>
+																			<strong>25FBAAA29F300B32DF38832E0A102B8A4FAB726B5FAEE428B00DBD5D58D9BB16</strong>
+																			<weak>3475582031</weak>
+																			<size>1039</size>
+																			<position>477</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
                                                                                                                                                 <empty>0</empty>
-																		<string>../../../../boost/exception.hpp</string>
+																		<string>../../../../boost/exception/diagnostic_information.hpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
-																<string>boost/exception.hpp</string>
+																<string>diagnostic_information</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
-																<string>exception_hpp</string>
+																<string></string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
@@ -525,32 +533,28 @@
                                                                                                                                 <hook>
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
-																			<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>
+																			<size>1</size>
+																			<strong>A08B750D3232ABEE88525742EFF8F342E5B2E4DE52BA6F55A8CFED666A50756E</strong>
+																			<weak>4268561218</weak>
+																			<size>4003</size>
+																			<position>323</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
                                                                                                                                                 <empty>0</empty>
-																		<string>../../../../boost/exception/info_tuple.hpp</string>
+																		<string>../../../../boost/exception/info.hpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
-																<string>operator<</tuple</string>
+																<string>boost/exception/info.hpp</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
-																<string></string>
+																<string>exception_error_info_hpp</string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
@@ -558,7 +562,7 @@
                                                                                                 <container>
                                                                                                         <size>1</size>
                                                                                                         <variant>2</variant>
-													<string>(:include include:)
(:auto also:)
</string>
+													<string>(:include include:)

(:auto also:)
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -574,32 +578,28 @@
                                                                                                                                 <hook>
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
-																			<size>2</size>
-																			<strong>86E1196533E771AEFD141DA43FCD980AE3D7689A45EDD54A2DF28B1943E0E7DB</strong>
-																			<weak>941210061</weak>
-																			<size>8706</size>
-																			<position>487</position>
-																			<strong>448B6444D4B3E46F822F56C14FDA3F6F96B869543EBA1E291C5E3D36F73AF24B</strong>
-																			<weak>2443226110</weak>
-																			<size>700</size>
-																			<position>1496</position>
+																			<size>1</size>
+																			<strong>7116AEECEA666794E31DC99390ADEC1BA6AF74B2398067A0739767B4B76FA97A</strong>
+																			<weak>4128134227</weak>
+																			<size>307</size>
+																			<position>302</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
                                                                                                                                                 <empty>0</empty>
-																		<string>../../../../boost/exception_ptr.hpp</string>
+																		<string>../../example/logging.cpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
-																<string>unknown_exception</string>
+																<string>diagnostic information</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
-																<string></string>
+																<string>tutorial_diagnostic_information</string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
@@ -623,32 +623,28 @@
                                                                                                                                 <hook>
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
-																			<size>2</size>
-																			<strong>86E1196533E771AEFD141DA43FCD980AE3D7689A45EDD54A2DF28B1943E0E7DB</strong>
-																			<weak>941210061</weak>
-																			<size>8706</size>
-																			<position>487</position>
-																			<strong>F86EB07D04CD0D0645080D1121DA899746D0C45137E17E1D9BE605E75396F047</strong>
-																			<weak>1983537541</weak>
-																			<size>1346</size>
-																			<position>148</position>
+																			<size>1</size>
+																			<strong>50E48ABD58B427E16B2EFA345D5FE67159057CB90F19AA1AD52C11991FD8500E</strong>
+																			<weak>4076172629</weak>
+																			<size>8577</size>
+																			<position>323</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
                                                                                                                                                 <empty>0</empty>
-																		<string>../../../../boost/exception_ptr.hpp</string>
+																		<string>../../../../boost/exception/exception.hpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
-																<string>exception_ptr</string>
+																<string>boost/exception/exception.hpp</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
-																<string></string>
+																<string>exception_exception_hpp</string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
@@ -673,28 +669,28 @@
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
                                                                                                                                                         <size>2</size>
-																			<strong>86E1196533E771AEFD141DA43FCD980AE3D7689A45EDD54A2DF28B1943E0E7DB</strong>
-																			<weak>941210061</weak>
-																			<size>8706</size>
-																			<position>487</position>
-																			<strong>E23085202D084CBB50F289988A6A592F06D923B77D0AB25D7A98A7188DF5BE3B</strong>
-																			<weak>1414247481</weak>
-																			<size>766</size>
-																			<position>7370</position>
+																			<strong>50E48ABD58B427E16B2EFA345D5FE67159057CB90F19AA1AD52C11991FD8500E</strong>
+																			<weak>4076172629</weak>
+																			<size>8577</size>
+																			<position>323</position>
+																			<strong>B4D37C317A3B45825DDA1A8C8B1CE71CC2E530D15090D05995FCBEC4247F49C4</strong>
+																			<weak>2742768198</weak>
+																			<size>258</size>
+																			<position>6714</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
                                                                                                                                                 <empty>0</empty>
-																		<string>../../../../boost/exception_ptr.hpp</string>
+																		<string>../../../../boost/exception/exception.hpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
-																<string>current_exception</string>
+																<string>enable_error_info</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
                                                                                                                                 <string></string>
@@ -721,40 +717,34 @@
                                                                                                                                 <hook>
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
-																			<size>2</size>
-																			<strong>50E48ABD58B427E16B2EFA345D5FE67159057CB90F19AA1AD52C11991FD8500E</strong>
-																			<weak>4076172629</weak>
-																			<size>8577</size>
-																			<position>323</position>
-																			<strong>B4D37C317A3B45825DDA1A8C8B1CE71CC2E530D15090D05995FCBEC4247F49C4</strong>
-																			<weak>2742768198</weak>
-																			<size>258</size>
-																			<position>6714</position>
+																			<size>1</size>
+																			<strong>E444EE9697EEADFDE0767E1D0242FC0E70D98E61FB1F0FFA099648DE509B82F3</strong>
+																			<weak>94503238</weak>
+																			<size>773</size>
+																			<position>374</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
                                                                                                                                                 <empty>0</empty>
-																		<string>../../../../boost/exception/exception.hpp</string>
+																		<string>../../example/info_tuple.cpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
-																<string>enable_error_info</string>
+																<string>adding grouped data to exceptions</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
-																<string></string>
+																<string>grouping_data</string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>1</size>
-													<variant>2</variant>
-													<string>(:include include:)
(:auto also:)
</string>
+													<size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -770,21 +760,32 @@
                                                                                                                                 <hook>
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
-																			<size>0</size>
+																			<size>2</size>
+																			<strong>86E1196533E771AEFD141DA43FCD980AE3D7689A45EDD54A2DF28B1943E0E7DB</strong>
+																			<weak>941210061</weak>
+																			<size>8706</size>
+																			<position>487</position>
+																			<strong>E23085202D084CBB50F289988A6A592F06D923B77D0AB25D7A98A7188DF5BE3B</strong>
+																			<weak>1414247481</weak>
+																			<size>766</size>
+																			<position>7370</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>transporting of arbitrary data to the catch site</string>
+																<string>current_exception</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
-																<string>tutorial_transporting_data</string>
+																<string></string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
@@ -808,32 +809,21 @@
                                                                                                                                 <hook>
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
-																			<size>2</size>
-																			<strong>80895C67727835F0DAB5F5EF65FB2FD9E64008528BD4B800119E88BFB914588F</strong>
-																			<weak>2505563498</weak>
-																			<size>3946</size>
-																			<position>518</position>
-																			<strong>7108B78DA28F7485BBB4D649BEE943AF19A3D63C80DD03F927FDA7A6D8EE2F3B</strong>
-																			<weak>3042951402</weak>
-																			<size>778</size>
-																			<position>26</position>
+																			<size>0</size>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
-																		<empty>0</empty>
-																		<string>../../../../boost/exception/info.hpp</string>
-																		<type>0</type>
-																		<base>0</base>
+																		<empty>1</empty>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
-																<string>error_info</string>
+																<string>transporting of exceptions between threads</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
-																<string></string>
+																<string>tutorial_exception_ptr</string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
@@ -857,44 +847,34 @@
                                                                                                                                 <hook>
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
-																			<size>3</size>
-																			<strong>50E48ABD58B427E16B2EFA345D5FE67159057CB90F19AA1AD52C11991FD8500E</strong>
-																			<weak>4076172629</weak>
-																			<size>8577</size>
-																			<position>323</position>
-																			<strong>2D32D2DE11DB8BDD6F34C94CC165ABEF4F4CCB2D119354FA05811534E2AF356F</strong>
-																			<weak>1002290201</weak>
-																			<size>1604</size>
-																			<position>3720</position>
-																			<strong>DA154372D8C23BD9EDC30005CA7959CE686D198891097A837D006B5222F04DE9</strong>
-																			<weak>2768248809</weak>
-																			<size>143</size>
-																			<position>60</position>
+																			<size>1</size>
+																			<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/exception.hpp</string>
+																		<string>../../example/cloning_2.cpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
-																<string>exception::exception</string>
+																<string>cloning and re-throwing an exception</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
-																<string>exception_constructors</string>
+																<string>cloning_and_rethrowing</string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>1</size>
-													<variant>2</variant>
-													<string>(:include include:)
(:auto also:)
</string>
+													<size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -911,27 +891,27 @@
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
                                                                                                                                                         <size>1</size>
-																			<strong>D9B8E6AA12A4F33953B1A961FA590C5A3840234B6531CA8C04AC985AD5800835</strong>
-																			<weak>2432554768</weak>
-																			<size>702</size>
-																			<position>408</position>
+																			<strong>F6A7A960DE8CB8740E206D2585D4C83854DE073ABDAFFB8BD1C9A6B73428197D</strong>
+																			<weak>129904804</weak>
+																			<size>4115</size>
+																			<position>323</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
                                                                                                                                                 <empty>0</empty>
-																		<string>../../example/enable_error_info.cpp</string>
+																		<string>../../../../boost/exception/get_error_info.hpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
-																<string>integrating boost exception in existing exception class hierarchies</string>
+																<string>boost/exception/get_error_info.hpp</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
-																<string>tutorial_enable_error_info</string>
+																<string></string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
@@ -955,34 +935,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>86E1196533E771AEFD141DA43FCD980AE3D7689A45EDD54A2DF28B1943E0E7DB</strong>
+																			<weak>941210061</weak>
+																			<size>8706</size>
+																			<position>487</position>
+																			<strong>F86EB07D04CD0D0645080D1121DA899746D0C45137E17E1D9BE605E75396F047</strong>
+																			<weak>1983537541</weak>
+																			<size>1346</size>
+																			<position>148</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>
                                                                                                                         </hook>
                                                                                                                         <title>
-																<string>adding of arbitrary data to active exception objects</string>
+																<string>exception_ptr</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:)
(:auto also:)
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -998,40 +984,34 @@
                                                                                                                                 <hook>
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
-																			<size>2</size>
-																			<strong>8F178D422EC1891AEDF90A4DCA7BCEC96D29D1B0A70726C222513D699679F59D</strong>
-																			<weak>3253069900</weak>
-																			<size>3913</size>
-																			<position>525</position>
-																			<strong>BB8AF986C96801345719855FEA083AF5684FBC349F6520E150F19A6370019265</strong>
-																			<weak>3731478139</weak>
-																			<size>686</size>
-																			<position>3221</position>
+																			<size>1</size>
+																			<strong>4ED9709788BBAB4DE7CF336561606B8C0B41F70877A3395F4EE026F4AEB66CC6</strong>
+																			<weak>743998427</weak>
+																			<size>409</size>
+																			<position>307</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
                                                                                                                                                 <empty>0</empty>
-																		<string>../../../../boost/exception/get_error_info.hpp</string>
+																		<string>../../example/cloning_1.cpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
-																<string>get_error_info</string>
+																<string>using enable_current_exception at the time of the throw</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
-																<string></string>
+																<string>using_enable_cloning</string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>1</size>
-													<variant>2</variant>
-													<string>(:include include:)
(:auto also:)
</string>
+													<size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -1048,9 +1028,9 @@
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
                                                                                                                                                         <size>1</size>
-																			<strong>25DF01CCA9425952104C6606C336BB091879E4A22680790BBB352670DFB0E0CD</strong>
-																			<weak>4271502180</weak>
-																			<size>8870</size>
+																			<strong>67D64FAD0AB7CA6B2173A14F363D19B27F59EEBDB5C1076F8BCCA1B54D4CCD7D</strong>
+																			<weak>2241687287</weak>
+																			<size>303</size>
                                                                                                                                                         <position>323</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
@@ -1058,17 +1038,17 @@
                                                                                                                                 <file>
                                                                                                                                         <path>
                                                                                                                                                 <empty>0</empty>
-																		<string>../../../../boost/exception_ptr.hpp</string>
+																		<string>../../../../boost/exception.hpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
-																<string>boost/exception_ptr.hpp</string>
+																<string>boost/exception.hpp</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
-																<string>exception_cloning_hpp</string>
+																<string>exception_hpp</string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
@@ -1092,32 +1072,28 @@
                                                                                                                                 <hook>
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
-																			<size>2</size>
-																			<strong>80895C67727835F0DAB5F5EF65FB2FD9E64008528BD4B800119E88BFB914588F</strong>
-																			<weak>2505563498</weak>
-																			<size>3946</size>
-																			<position>518</position>
-																			<strong>D31BCE814DF5B8B718E7EB67A194AD08EF716A26D422E436596ABA1F145007D8</strong>
-																			<weak>4055211476</weak>
-																			<size>525</size>
-																			<position>3415</position>
+																			<size>1</size>
+																			<strong>05BBA12328429E0E88C8D44170E103FDF8DCD84E0C9AFB19D0478F9F4606FBE7</strong>
+																			<weak>3486222742</weak>
+																			<size>2082</size>
+																			<position>91</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>
                                                                                                                         </hook>
                                                                                                                         <title>
-																<string>operator<</exception</string>
+																<string>boost/throw_exception.hpp</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
-																<string></string>
+																<string>throw_exception_hpp</string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
@@ -1142,33 +1118,35 @@
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
                                                                                                                                                         <size>1</size>
-																			<strong>187BFD2B78A0DD006717B5B06FFD465E2468F521C32A86FB793F7A68AB5417F3</strong>
-																			<weak>4276724153</weak>
-																			<size>574</size>
-																			<position>382</position>
+																			<strong>25DF01CCA9425952104C6606C336BB091879E4A22680790BBB352670DFB0E0CD</strong>
+																			<weak>4271502180</weak>
+																			<size>8870</size>
+																			<position>323</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
                                                                                                                                                 <empty>0</empty>
-																		<string>../../example/error_info_1.cpp</string>
+																		<string>../../../../boost/exception_ptr.hpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
-																<string>adding of arbitrary data at the point of the throw</string>
+																<string>boost/exception_ptr.hpp</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
-																<string>adding_data_at_throw</string>
+																<string>exception_cloning_hpp</string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>0</size>
+													<size>1</size>
+													<variant>2</variant>
+													<string>(:include include:)
(:auto also:)
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -1184,28 +1162,32 @@
                                                                                                                                 <hook>
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
-																			<size>1</size>
-																			<strong>CAD6C404CB725D336A44920D2341ECA131149AB02C368B59028F8147F16737BF</strong>
-																			<weak>2258638601</weak>
-																			<size>94</size>
-																			<position>227</position>
+																			<size>2</size>
+																			<strong>8F178D422EC1891AEDF90A4DCA7BCEC96D29D1B0A70726C222513D699679F59D</strong>
+																			<weak>3253069900</weak>
+																			<size>3913</size>
+																			<position>525</position>
+																			<strong>BB8AF986C96801345719855FEA083AF5684FBC349F6520E150F19A6370019265</strong>
+																			<weak>3731478139</weak>
+																			<size>686</size>
+																			<position>3221</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
                                                                                                                                                 <empty>0</empty>
-																		<string>../../../../boost/exception/info_tuple.hpp</string>
+																		<string>../../../../boost/exception/get_error_info.hpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
-																<string>boost/exception/info_tuple.hpp</string>
+																<string>get_error_info</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
-																<string>exception_error_info_group_hpp</string>
+																<string></string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
@@ -1229,34 +1211,40 @@
                                                                                                                                 <hook>
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
-																			<size>1</size>
-																			<strong>4ED9709788BBAB4DE7CF336561606B8C0B41F70877A3395F4EE026F4AEB66CC6</strong>
-																			<weak>743998427</weak>
-																			<size>409</size>
-																			<position>307</position>
+																			<size>2</size>
+																			<strong>17F10DBB69A481226D23CBBD7A897BF484EB8C5B1DC2E346E725EF0B8CE76D14</strong>
+																			<weak>469421394</weak>
+																			<size>3808</size>
+																			<position>518</position>
+																			<strong>D31BCE814DF5B8B718E7EB67A194AD08EF716A26D422E436596ABA1F145007D8</strong>
+																			<weak>4055211476</weak>
+																			<size>525</size>
+																			<position>3277</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>
                                                                                                                         </hook>
                                                                                                                         <title>
-																<string>using enable_current_exception at the time of the throw</string>
+																<string>operator<</exception</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
-																<string>using_enable_cloning</string>
+																<string></string>
                                                                                                                         </file_name>
                                                                                                                 </object>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>0</size>
+													<size>1</size>
+													<variant>2</variant>
+													<string>(:include include:)
(:auto also:)
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -1272,25 +1260,29 @@
                                                                                                                                 <hook>
                                                                                                                                         <stream_hook_path>
                                                                                                                                                 <container>
-																			<size>1</size>
-																			<strong>86015F1EAE1BF32CF58BD22D021B7697EAF6A5B07B79CE46116046B74AAE0327</strong>
-																			<weak>2401878021</weak>
-																			<size>1632</size>
-																			<position>323</position>
+																			<size>2</size>
+																			<strong>126BB1D8971585CBE7D78EF3C12259D72FD5E973A84626AA9FC3234220A11CAB</strong>
+																			<weak>3471702891</weak>
+																			<size>969</size>
+																			<position>344</position>
+																			<strong>A7FD310E1340E103081DA2A7899DA0E213C696C84D52C17ADA09F6942EE97D47</strong>
+																			<weak>2978648279</weak>
+																			<size>530</size>
+																			<position>433</position>
                                                                                                                                                 </container>
                                                                                                                                         </stream_hook_path>
                                                                                                                                 </hook>
                                                                                                                                 <file>
                                                                                                                                         <path>
                                                                                                                                                 <empty>0</empty>
-																		<string>../../../../boost/exception/diagnostic_information.hpp</string>
+																		<string>../../../../boost/exception/detail/error_info_impl.hpp</string>
                                                                                                                                                 <type>0</type>
                                                                                                                                                 <base>0</base>
                                                                                                                                         </path>
                                                                                                                                 </file>
                                                                                                                         </hook>
                                                                                                                         <title>
-																<string>boost/exception/diagnostic_information.hpp</string>
+																<string>error_info</string>
                                                                                                                         </title>
                                                                                                                         <file_name>
                                                                                                                                 <string></string>
@@ -1344,32 +1336,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>33</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>
+															<id>-21</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -1378,7 +1345,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>34</id>
+															<id>33</id>
                                                                                                                         <type>
                                                                                                                                 <string>reno_context</string>
                                                                                                                         </type>
@@ -1423,34 +1390,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-20</id>
-														</shared_ptr>
-													</weak_ptr>
-													<variant>2</variant>
-													<string> mod="w":)
##(:link </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-23</id>
-														</shared_ptr>
-													</weak_ptr>
-													<variant>2</variant>
-													<string> mod="w":)
##(:link </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-33</id>
-														</shared_ptr>
-													</weak_ptr>
-													<variant>2</variant>
-													<string> mod="w":)
##(:link </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>35</id>
+															<id>34</id>
                                                                                                                         <type>
                                                                                                                                 <string>reno_context</string>
                                                                                                                         </type>
@@ -1459,43 +1399,68 @@
                                                                                                                                         <hook>
                                                                                                                                                 <stream_hook_path>
                                                                                                                                                         <container>
-																				<size>1</size>
-																				<strong>7116AEECEA666794E31DC99390ADEC1BA6AF74B2398067A0739767B4B76FA97A</strong>
-																				<weak>4128134227</weak>
-																				<size>307</size>
-																				<position>302</position>
+																				<size>0</size>
                                                                                                                                                         </container>
                                                                                                                                                 </stream_hook_path>
                                                                                                                                         </hook>
                                                                                                                                         <file>
                                                                                                                                                 <path>
-																			<empty>0</empty>
-																			<string>../../example/logging.cpp</string>
-																			<type>0</type>
-																			<base>0</base>
+																			<empty>1</empty>
                                                                                                                                                 </path>
                                                                                                                                         </file>
                                                                                                                                 </hook>
                                                                                                                                 <title>
-																	<string>diagnostic information</string>
+																	<string>transporting of arbitrary data to the catch site</string>
                                                                                                                                 </title>
                                                                                                                                 <file_name>
-																	<string>tutorial_diagnostic_information</string>
+																	<string>tutorial_transporting_data</string>
                                                                                                                                 </file_name>
                                                                                                                         </object>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string> mod="w":)
#Documentation
##Class (:link </string>
+													<string> mod="w":)
##(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>35</id>
+															<type>
+																<string>reno_context</string>
+															</type>
+															<object>
+																<hook>
+																	<hook>
+																		<stream_hook_path>
+																			<container>
+																				<size>1</size>
+																				<strong>D9B8E6AA12A4F33953B1A961FA590C5A3840234B6531CA8C04AC985AD5800835</strong>
+																				<weak>2432554768</weak>
+																				<size>702</size>
+																				<position>408</position>
+																			</container>
+																		</stream_hook_path>
+																	</hook>
+																	<file>
+																		<path>
+																			<empty>0</empty>
+																			<string>../../example/enable_error_info.cpp</string>
+																			<type>0</type>
+																			<base>0</base>
+																		</path>
+																	</file>
+																</hook>
+																<title>
+																	<string>integrating boost exception in existing exception class hierarchies</string>
+																</title>
+																<file_name>
+																	<string>tutorial_enable_error_info</string>
+																</file_name>
+															</object>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)
##Transporting of Arbitrary Data to the Catch Site
###(:link </string>
+													<string> mod="w":)
##(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
@@ -1504,30 +1469,30 @@
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)
###(:link </string>
+													<string> mod="w":)
##(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-27</id>
+															<id>-16</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)
###(:link </string>
+													<string> mod="w":)
#Documentation
##Class (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-15</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)
###(:link </string>
+													<string>:)
##Transporting of Arbitrary Data to the Catch Site
###(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-25</id>
+															<id>-31</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -1536,16 +1501,16 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-19</id>
+															<id>-30</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)
##(:link http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2179.html|N2179:) Transporting of Exceptions between Threads
###(:link </string>
+													<string>:)
###(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-17</id>
+															<id>-5</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -1554,7 +1519,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-9</id>
+															<id>-29</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -1567,12 +1532,12 @@
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)
###(:link </string>
+													<string>:)
##(:link http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2179.html|N2179:) Transporting of Exceptions between Threads
###(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-7</id>
+															<id>-24</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -1581,7 +1546,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-12</id>
+															<id>-13</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -1590,38 +1555,110 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-16</id>
+															<id>-20</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)
##(:link </string>
+													<string>:)
###(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-8</id>
+															<id>-10</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)
##(:link </string>
+													<string>:)
###(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-34</id>
+															<id>36</id>
+															<type>
+																<string>reno_context</string>
+															</type>
+															<object>
+																<hook>
+																	<hook>
+																		<stream_hook_path>
+																			<container>
+																				<size>2</size>
+																				<strong>86E1196533E771AEFD141DA43FCD980AE3D7689A45EDD54A2DF28B1943E0E7DB</strong>
+																				<weak>941210061</weak>
+																				<size>8706</size>
+																				<position>487</position>
+																				<strong>0E9DF8366080712A816BE91ABCEF1E2044145B63D75B0B995B537900F378189E</strong>
+																				<weak>1069696031</weak>
+																				<size>255</size>
+																				<position>8445</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>
+																</hook>
+																<title>
+																	<string>rethrow_exception</string>
+																</title>
+																<file_name>
+																	<string></string>
+																</file_name>
+															</object>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:), (:link </string>
+													<string>:)
###(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-11</id>
+															<id>37</id>
+															<type>
+																<string>reno_context</string>
+															</type>
+															<object>
+																<hook>
+																	<hook>
+																		<stream_hook_path>
+																			<container>
+																				<size>2</size>
+																				<strong>86E1196533E771AEFD141DA43FCD980AE3D7689A45EDD54A2DF28B1943E0E7DB</strong>
+																				<weak>941210061</weak>
+																				<size>8706</size>
+																				<position>487</position>
+																				<strong>448B6444D4B3E46F822F56C14FDA3F6F96B869543EBA1E291C5E3D36F73AF24B</strong>
+																				<weak>2443226110</weak>
+																				<size>700</size>
+																				<position>1496</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>
+																</hook>
+																<title>
+																	<string>unknown_exception</string>
+																</title>
+																<file_name>
+																	<string></string>
+																</file_name>
+															</object>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)
##Headers
###(:link </string>
+													<string>:)
##(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
@@ -1630,30 +1667,30 @@
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)
###(:link </string>
+													<string>:)
##(: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>:)
###(:link </string>
+													<string>:), (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-5</id>
+															<id>-12</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)
###(:link </string>
+													<string>:)
##Headers
###(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-13</id>
+															<id>-26</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -1662,7 +1699,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>36</id>
+															<id>38</id>
                                                                                                                         <type>
                                                                                                                                 <string>reno_context</string>
                                                                                                                         </type>
@@ -1672,9 +1709,9 @@
                                                                                                                                                 <stream_hook_path>
                                                                                                                                                         <container>
                                                                                                                                                                 <size>1</size>
-																				<strong>004B7821B451CA1B70A9BE6231A5359BE7A5E991793A4B4DB1DB0008905DF6B6</strong>
-																				<weak>2648584333</weak>
-																				<size>4115</size>
+																				<strong>86015F1EAE1BF32CF58BD22D021B7697EAF6A5B07B79CE46116046B74AAE0327</strong>
+																				<weak>2401878021</weak>
+																				<size>1632</size>
                                                                                                                                                                 <position>323</position>
                                                                                                                                                         </container>
                                                                                                                                                 </stream_hook_path>
@@ -1682,14 +1719,14 @@
                                                                                                                                         <file>
                                                                                                                                                 <path>
                                                                                                                                                         <empty>0</empty>
-																			<string>../../../../boost/exception/get_error_info.hpp</string>
+																			<string>../../../../boost/exception/diagnostic_information.hpp</string>
                                                                                                                                                         <type>0</type>
                                                                                                                                                         <base>0</base>
                                                                                                                                                 </path>
                                                                                                                                         </file>
                                                                                                                                 </hook>
                                                                                                                                 <title>
-																	<string>boost/exception/get_error_info.hpp</string>
+																	<string>boost/exception/diagnostic_information.hpp</string>
                                                                                                                                 </title>
                                                                                                                                 <file_name>
                                                                                                                                         <string></string>
@@ -1703,7 +1740,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>37</id>
+															<id>39</id>
                                                                                                                         <type>
                                                                                                                                 <string>reno_context</string>
                                                                                                                         </type>
@@ -1712,28 +1749,32 @@
                                                                                                                                         <hook>
                                                                                                                                                 <stream_hook_path>
                                                                                                                                                         <container>
-																				<size>1</size>
-																				<strong>B3FB1F53BE0C995FC6388C2C4510AA859AC443E2E68F1F4E31541A8F7510861F</strong>
-																				<weak>3274515267</weak>
-																				<size>4141</size>
-																				<position>323</position>
+																				<size>2</size>
+																				<strong>9A4ECF9A49A73AED83C1565CB8C67AE1519E8AFE6818F968B4C4733CB9E86CEF</strong>
+																				<weak>1615599655</weak>
+																				<size>68</size>
+																				<position>227</position>
+																				<strong>34F0583BC8DE767CE2D79721E1F956895E43E5397473B1050F59BE7E26C773DB</strong>
+																				<weak>805836816</weak>
+																				<size>66</size>
+																				<position>1</position>
                                                                                                                                                         </container>
                                                                                                                                                 </stream_hook_path>
                                                                                                                                         </hook>
                                                                                                                                         <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>
                                                                                                                                 </hook>
                                                                                                                                 <title>
-																	<string>boost/exception/info.hpp</string>
+																	<string>boost/exception/error_info.hpp</string>
                                                                                                                                 </title>
                                                                                                                                 <file_name>
-																	<string>exception_error_info_hpp</string>
+																	<string>exception_error_info_value_hpp</string>
                                                                                                                                 </file_name>
                                                                                                                         </object>
                                                                                                                 </shared_ptr>
@@ -1744,7 +1785,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-29</id>
+															<id>-17</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -1753,7 +1794,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-26</id>
+															<id>-23</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -1762,39 +1803,34 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>38</id>
-															<type>
-																<string>reno_context</string>
-															</type>
-															<object>
-																<hook>
-																	<hook>
-																		<stream_hook_path>
-																			<container>
-																				<size>1</size>
-																				<strong>05BBA12328429E0E88C8D44170E103FDF8DCD84E0C9AFB19D0478F9F4606FBE7</strong>
-																				<weak>3486222742</weak>
-																				<size>2082</size>
-																				<position>91</position>
-																			</container>
-																		</stream_hook_path>
-																	</hook>
-																	<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>
+															<id>-15</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string>:)
###(:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-8</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string>:)
###(:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-28</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string>:)
###(:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-27</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -1803,7 +1839,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>39</id>
+															<id>40</id>
                                                                                                                         <type>
                                                                                                                                 <string>reno_context</string>
                                                                                                                         </type>
@@ -1837,7 +1873,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-14</id>
+															<id>-26</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -1846,7 +1882,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-13</id>
+															<id>-17</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -1855,7 +1891,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-37</id>
+															<id>-15</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -1864,7 +1900,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-29</id>
+															<id>-8</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -1873,7 +1909,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-31</id>
+															<id>-38</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -1882,7 +1918,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-26</id>
+															<id>-28</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -1891,7 +1927,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-38</id>
+															<id>-27</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -1900,7 +1936,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-38</id>
+															<id>-27</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -1909,7 +1945,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -1918,7 +1954,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-21</id>
+															<id>-31</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -1927,7 +1963,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-27</id>
+															<id>-30</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -1936,7 +1972,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-15</id>
+															<id>-5</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -1945,7 +1981,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-25</id>
+															<id>-29</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -1954,7 +1990,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-19</id>
+															<id>-18</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -1963,7 +1999,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-17</id>
+															<id>-24</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -1972,7 +2008,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-9</id>
+															<id>-13</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -1981,7 +2017,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-18</id>
+															<id>-20</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -1990,7 +2026,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-7</id>
+															<id>-10</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -1999,7 +2035,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-12</id>
+															<id>-36</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -2008,7 +2044,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-16</id>
+															<id>-37</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -2017,7 +2053,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-8</id>
+															<id>-14</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -2026,7 +2062,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-34</id>
+															<id>-33</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -2037,7 +2073,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-33</id>
+														<id>-36</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -2050,7 +2086,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-34</id>
+														<id>-38</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -2076,95 +2112,89 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-36</id>
+														<id>41</id>
+														<type>
+															<string>reno_context</string>
+														</type>
+														<object>
+															<hook>
+																<hook>
+																	<stream_hook_path>
+																		<container>
+																			<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>../../example/error_info_2.cpp</string>
+																		<type>0</type>
+																		<base>0</base>
+																	</path>
+																</file>
+															</hook>
+															<title>
+																<string>adding of arbitrary data to active exception objects</string>
+															</title>
+															<file_name>
+																<string>adding_data_later</string>
+															</file_name>
+														</object>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>1</size>
-													<variant>2</variant>
-													<string>(:include include:)
(:auto also:)
</string>
+													<size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-37</id>
+														<id>-34</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
                                                                                                         <size>1</size>
                                                                                                         <variant>2</variant>
-													<string>(:include include:)

(:auto also:)
</string>
+													<string>(:include include:)
(:auto also:)
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-38</id>
+														<id>-40</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
                                                                                                         <size>1</size>
                                                                                                         <variant>2</variant>
-													<string>(:include include:)
(:auto also:)
</string>
+													<string>(:auto !:)

(:pagelist fmt="index" except_tags="index,noindex" mod="w":)
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-39</id>
+														<id>-37</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
                                                                                                         <size>1</size>
                                                                                                         <variant>2</variant>
-													<string>(:auto !:)

(:pagelist fmt="index" except_tags="index,noindex" mod="w":)
</string>
+													<string>(:include include:)
(:auto also:)
</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>50E48ABD58B427E16B2EFA345D5FE67159057CB90F19AA1AD52C11991FD8500E</strong>
-																			<weak>4076172629</weak>
-																			<size>8577</size>
-																			<position>323</position>
-																			<strong>17E691632123EB67BA67D590B49EB8094F462F5A10A66A1C5438E1867EF1478E</strong>
-																			<weak>765399792</weak>
-																			<size>77</size>
-																			<position>5326</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_destructor</string>
-															</file_name>
-														</object>
+														<id>-39</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -2177,43 +2207,13 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>41</id>
-														<type>
-															<string>reno_context</string>
-														</type>
-														<object>
-															<hook>
-																<hook>
-																	<stream_hook_path>
-																		<container>
-																			<size>1</size>
-																			<strong>E444EE9697EEADFDE0767E1D0242FC0E70D98E61FB1F0FFA099648DE509B82F3</strong>
-																			<weak>94503238</weak>
-																			<size>773</size>
-																			<position>374</position>
-																		</container>
-																	</stream_hook_path>
-																</hook>
-																<file>
-																	<path>
-																		<empty>0</empty>
-																		<string>../../example/info_tuple.cpp</string>
-																		<type>0</type>
-																		<base>0</base>
-																	</path>
-																</file>
-															</hook>
-															<title>
-																<string>adding grouped data to exceptions</string>
-															</title>
-															<file_name>
-																<string>grouping_data</string>
-															</file_name>
-														</object>
+														<id>-33</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>0</size>
+													<size>1</size>
+													<variant>2</variant>
+													<string>(:include include:)
(:auto also:)
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                 </sorted>
@@ -2293,6 +2293,17 @@
                                                                                                         </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>7</size>
                                                                                                         <variant>2</variant>
                                                                                                         <string>[@class
(:link </string>
@@ -2300,7 +2311,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -2309,7 +2320,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-22</id>
+															<id>-7</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -2318,7 +2329,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-40</id>
+															<id>-9</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -2329,17 +2340,6 @@
                                                                                                 <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>
@@ -2443,18 +2443,7 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>3</size>
-													<variant>2</variant>
-													<string>[@template <class Tag,class T>
class
(:link </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-21</id>
-														</shared_ptr>
-													</weak_ptr>
-													<variant>2</variant>
-													<string>:)
    {
    public:

    typedef T value_type;

    error_info( value_type const & );
    };@]
</string>
+													<size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -2564,7 +2553,18 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>0</size>
+													<size>3</size>
+													<variant>2</variant>
+													<string>[@template <class Tag,class T>
class
(:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-31</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string>:)
    {
    public:

    typedef T value_type;

    error_info( value_type const & );
    };@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -2582,7 +2582,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-33</id>
+														<id>-36</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -2593,7 +2593,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-34</id>
+														<id>-38</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -2615,7 +2615,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-36</id>
+														<id>-41</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -2626,7 +2626,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-37</id>
+														<id>-34</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -2637,7 +2637,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-38</id>
+														<id>-40</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -2648,7 +2648,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-39</id>
+														<id>-37</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -2659,7 +2659,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-40</id>
+														<id>-39</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -2670,7 +2670,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-41</id>
+														<id>-33</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -2699,18 +2699,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>-21</id>
-														</shared_ptr>
-													</weak_ptr>
-													<variant>2</variant>
-													<string> decl:)@]
</string>
+													<size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -2743,7 +2732,18 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>0</size>
+													<size>3</size>
+													<variant>2</variant>
+													<string>[@(:include </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-5</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string> decl:)@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -2798,14 +2798,36 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>15</size>
+													<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>5</size>
                                                                                                         <variant>2</variant>
                                                                                                         <string>[@(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-31</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -2814,52 +2836,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-21</id>
-														</shared_ptr>
-													</weak_ptr>
-													<variant>2</variant>
-													<string> decl:)

typedef (:link </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-21</id>
-														</shared_ptr>
-													</weak_ptr>
-													<variant>2</variant>
-													<string>:)<struct tag_throw_function,char const *> throw_function;
typedef (:link </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-21</id>
-														</shared_ptr>
-													</weak_ptr>
-													<variant>2</variant>
-													<string>:)<struct tag_throw_file,char const *> throw_file;
typedef (:link </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-21</id>
-														</shared_ptr>
-													</weak_ptr>
-													<variant>2</variant>
-													<string>:)<struct tag_throw_line,int> throw_line;

(:include </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-19</id>
-														</shared_ptr>
-													</weak_ptr>
-													<variant>2</variant>
-													<string> decl:)

(:include </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-9</id>
+															<id>-30</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -2870,109 +2847,87 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-14</id>
+														<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>15</size>
                                                                                                         <variant>2</variant>
-													<string>[@#include <(:link </string>
+													<string>[@(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-31</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)>
#include <(:link </string>
+													<string> def:)

(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-5</id>
+															<id>-31</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)>
#include <(:link </string>
+													<string> decl:)

typedef (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-13</id>
+															<id>-31</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)>
#include <(:link </string>
+													<string>:)<struct tag_throw_function,char const *> throw_function;
typedef (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-36</id>
+															<id>-31</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)>
#include <(:link </string>
+													<string>:)<struct tag_throw_file,char const *> throw_file;
typedef (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-37</id>
+															<id>-31</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)>
#include <(:link </string>
+													<string>:)<struct tag_throw_line,int> throw_line;

(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-29</id>
+															<id>-18</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)>
#include <(:link </string>
+													<string> decl:)

(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-26</id>
+															<id>-13</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)>@]
</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>
+													<string> decl:)@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -3038,7 +2993,18 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>0</size>
+													<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:)@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -3071,18 +3037,27 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>11</size>
+													<size>15</size>
                                                                                                         <variant>2</variant>
-													<string>[@(:include </string>
+													<string>[@#include <(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-16</id>
+															<id>-38</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string> decl:)

(:include </string>
+													<string>:)>
#include <(:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-39</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string>:)>
#include <(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
@@ -3091,34 +3066,43 @@
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string> decl:)

(:include </string>
+													<string>:)>
#include <(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-7</id>
+															<id>-23</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string> decl:)

(:include </string>
+													<string>:)>
#include <(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-18</id>
+															<id>-15</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string> decl:)

(:include </string>
+													<string>:)>
#include <(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-12</id>
+															<id>-8</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string> decl:)@]
</string>
+													<string>:)>
#include <(:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-28</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string>:)>@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -3129,78 +3113,81 @@
                                                                                                         </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>3</size>
+													<size>5</size>
                                                                                                         <variant>2</variant>
                                                                                                         <string>[@(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-15</id>
+															<id>-12</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string> decl:)@]
</string>
-												</container>
-											</pair>
-											<pair>
-												<weak_ptr>
-													<expired>0</expired>
-													<shared_ptr>
-														<id>-30</id>
-													</shared_ptr>
-												</weak_ptr>
-												<container>
-													<size>0</size>
+													<string> decl:)

namespace
boost
    {
(:include </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-33</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string> decl:)
    }@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-31</id>
+														<id>-28</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>5</size>
+													<size>11</size>
                                                                                                         <variant>2</variant>
                                                                                                         <string>[@(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
+															<id>-37</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string> decl:)

(:include </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-24</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string> decl:)

(:include </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
                                                                                                                         <id>-10</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string> decl:)
(:include </string>
+													<string> decl:)

(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-8</id>
+															<id>-20</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string> decl:)

(:include </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-36</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -3211,7 +3198,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-32</id>
+														<id>-29</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -3222,7 +3209,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-33</id>
+														<id>-30</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -3233,7 +3220,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-34</id>
+														<id>-31</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -3244,7 +3231,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-35</id>
+														<id>-32</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -3259,25 +3246,14 @@
                                                                                                         </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>-25</id>
-														</shared_ptr>
-													</weak_ptr>
-													<variant>2</variant>
-													<string> decl:)@]
</string>
+													<size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-37</id>
+														<id>-38</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -3288,16 +3264,16 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-21</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string> def:)

(:include </string>
+													<string> decl:)
(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-27</id>
+															<id>-14</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -3308,38 +3284,29 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-38</id>
+														<id>-35</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>5</size>
-													<variant>2</variant>
-													<string>[@(:include </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-11</id>
-														</shared_ptr>
-													</weak_ptr>
-													<variant>2</variant>
-													<string> decl:)

namespace
boost
    {
(:include </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-34</id>
-														</shared_ptr>
-													</weak_ptr>
-													<variant>2</variant>
-													<string> decl:)
    }@]
</string>
+													<size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-39</id>
+														<id>-41</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>
@@ -3361,7 +3328,40 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-41</id>
+														<id>-37</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>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:)@]
</string>
+												</container>
+											</pair>
+											<pair>
+												<weak_ptr>
+													<expired>0</expired>
+													<shared_ptr>
+														<id>-33</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -3390,7 +3390,36 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>0</size>
+													<size>7</size>
+													<variant>2</variant>
+													<string>[@template <class E, class Tag1, class T1, ..., class TagN, class TN>
E const & (:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-5</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string>|operator<<:)( E const & x,
    (:link http://www.boost.org/libs/tuple/doc/tuple_users_guide.html|tuple:)<
        (:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-31</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string>:)<Tag1,T1>,
        ...,
        (:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-31</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string>:)<TagN,TN> > const & v );@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -3412,18 +3441,18 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>5</size>
+													<size>7</size>
                                                                                                         <variant>2</variant>
-													<string>[@template <class T>
(:link </string>
+													<string>[@(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-17</id>
+															<id>-7</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) (:link </string>
+													<string> mod="m":)();
(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
@@ -3432,7 +3461,16 @@
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)( T const & e );@]
</string>
+													<string> mod="m":)( (:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-11</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string>:) const & x );@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -3443,45 +3481,56 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>5</size>
-													<variant>2</variant>
-													<string>[@std::string (:link </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-8</id>
-														</shared_ptr>
-													</weak_ptr>
+													<size>0</size>
+												</container>
+											</pair>
+											<pair>
+												<weak_ptr>
+													<expired>0</expired>
+													<shared_ptr>
+														<id>-9</id>
+													</shared_ptr>
+												</weak_ptr>
+												<container>
+													<size>3</size>
                                                                                                         <variant>2</variant>
-													<string>:)( boost::</string>
+													<string>[@(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-9</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string> const & x );@]
</string>
+													<string> mod="m":)();@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-9</id>
+														<id>-10</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>3</size>
+													<size>5</size>
                                                                                                         <variant>2</variant>
-													<string>[@template <class T>
---unspecified--- (:link </string>
+													<string>[@template <class T>
(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-9</id>
+															<id>-24</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string>:) (:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-10</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -3492,7 +3541,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-10</id>
+														<id>-11</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -3503,7 +3552,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -3514,7 +3563,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-11</id>
+														<id>-12</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -3525,7 +3574,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-13</id>
+															<id>-17</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -3534,7 +3583,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-11</id>
+															<id>-12</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -3543,7 +3592,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-34</id>
+															<id>-33</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -3552,7 +3601,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-19</id>
+															<id>-18</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -3561,7 +3610,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-13</id>
+															<id>-17</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -3570,7 +3619,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-13</id>
+															<id>-17</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -3579,7 +3628,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-13</id>
+															<id>-17</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -3588,7 +3637,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-11</id>
+															<id>-12</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -3597,7 +3646,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-34</id>
+															<id>-33</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -3608,38 +3657,60 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-12</id>
+														<id>-13</id>
+													</shared_ptr>
+												</weak_ptr>
+												<container>
+													<size>3</size>
+													<variant>2</variant>
+													<string>[@template <class T>
---unspecified--- (:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-13</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string>:)( T const & e );@]
</string>
+												</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>[@void (:link </string>
+													<string>[@std::string (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-12</id>
+															<id>-14</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)( (:link </string>
+													<string>:)( boost::</string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-17</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) const & ep );</string>
+													<string> const & x );@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-13</id>
+														<id>-15</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -3650,7 +3721,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-14</id>
+														<id>-16</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -3661,100 +3732,51 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-15</id>
+														<id>-17</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>7</size>
-													<variant>2</variant>
-													<string>[@template <class E, class Tag1, class T1, ..., class TagN, class TN>
E const & (:link </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-15</id>
-														</shared_ptr>
-													</weak_ptr>
-													<variant>2</variant>
-													<string>|operator<<:)( E const & x,
    (:link http://www.boost.org/libs/tuple/doc/tuple_users_guide.html|tuple:)<
        (:link </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-21</id>
-														</shared_ptr>
-													</weak_ptr>
-													<variant>2</variant>
-													<string>:)<Tag1,T1>,
        ...,
        (:link </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-21</id>
-														</shared_ptr>
-													</weak_ptr>
-													<variant>2</variant>
-													<string>:)<TagN,TN> > const & v );@]
</string>
+													<size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-16</id>
+														<id>-18</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>5</size>
-													<variant>2</variant>
-													<string>[@class
(:link </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-16</id>
-														</shared_ptr>
-													</weak_ptr>
+													<size>3</size>
                                                                                                         <variant>2</variant>
-													<string>:):
    public std::exception
    public boost::</string>
+													<string>[@template <class T>
---unspecified--- (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-18</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>
    {
    ---unspecified---
    };@]
</string>
+													<string>:)( T const & x );@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-17</id>
+														<id>-19</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>-17</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>-20</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -3765,7 +3787,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-17</id>
+															<id>-24</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -3774,7 +3796,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-18</id>
+															<id>-20</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -3785,29 +3807,18 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-19</id>
+														<id>-21</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>3</size>
-													<variant>2</variant>
-													<string>[@template <class T>
---unspecified--- (:link </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-19</id>
-														</shared_ptr>
-													</weak_ptr>
-													<variant>2</variant>
-													<string>:)( T const & x );@]
</string>
+													<size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-20</id>
+														<id>-22</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -3818,18 +3829,29 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-21</id>
+														<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>3</size>
                                                                                                         <variant>2</variant>
-													<string>[@template <class Tag,class T>
class (:link </string>
+													<string>[@typedef ---unspecified--- (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-21</id>
+															<id>-24</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -3840,47 +3862,18 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-22</id>
+														<id>-25</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>-22</id>
-														</shared_ptr>
-													</weak_ptr>
-													<variant>2</variant>
-													<string> mod="m":)();
(:link </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-22</id>
-														</shared_ptr>
-													</weak_ptr>
-													<variant>2</variant>
-													<string> mod="m":)( (:link </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-10</id>
-														</shared_ptr>
-													</weak_ptr>
-													<variant>2</variant>
-													<string>:) const & x );@]
</string>
+													<size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-23</id>
+														<id>-26</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -3891,7 +3884,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-24</id>
+														<id>-27</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -3902,7 +3895,18 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-25</id>
+														<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>
@@ -3913,7 +3917,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-25</id>
+															<id>-29</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -3924,18 +3928,7 @@
                                                                                                 <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>
+														<id>-30</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -3946,7 +3939,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-27</id>
+															<id>-30</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -3955,7 +3948,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-21</id>
+															<id>-31</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -3966,44 +3959,22 @@
                                                                                                 <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>
+													<size>3</size>
+													<variant>2</variant>
+													<string>[@template <class Tag,class T>
class (:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-31</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string>:);@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -4021,49 +3992,38 @@
                                                                                                 <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>
+														<id>-36</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
                                                                                                         <size>5</size>
                                                                                                         <variant>2</variant>
-													<string>[@#ifdef BOOST_NO_EXCEPTIONS
    void (:link </string>
+													<string>[@void (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-34</id>
+															<id>-36</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)( std::exception const & e ); // user defined
#else
    template <class E>
    void (:link </string>
+													<string>:)( (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-34</id>
+															<id>-24</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)( E const & e );
#endif@]
</string>
+													<string>:) const & ep );</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-35</id>
+														<id>-38</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -4074,7 +4034,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-36</id>
+														<id>-35</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -4085,7 +4045,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-37</id>
+														<id>-41</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -4096,7 +4056,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-38</id>
+														<id>-34</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -4107,7 +4067,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-39</id>
+														<id>-40</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -4118,35 +4078,75 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-40</id>
+														<id>-37</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>3</size>
+													<size>5</size>
                                                                                                         <variant>2</variant>
-													<string>[@(:link </string>
+													<string>[@class
(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-40</id>
+															<id>-37</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string> mod="m":)();@]
</string>
+													<string>:):
    public std::exception
    public boost::</string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-11</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string>
    {
    ---unspecified---
    };@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-41</id>
+														<id>-39</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>5</size>
+													<variant>2</variant>
+													<string>[@#ifdef BOOST_NO_EXCEPTIONS
    void (:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-33</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string>:)( std::exception const & e ); // user defined
#else
    template <class E>
    void (:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-33</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string>:)( E const & e );
#endif@]
</string>
+												</container>
+											</pair>
                                                                                 </sorted>
                                                                         </object>
                                                                 </shared_ptr>
@@ -4169,9 +4169,27 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>1</size>
+													<size>5</size>
                                                                                                         <variant>2</variant>
-													<string>(:auto !!:)

!!!Synopsis

(:include synopsis:)
</string>
+													<string>(:auto !!!:)

(:include synopsis:)

!!!!Requirements:

E must be boost::(:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-11</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>-11</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string>:).

!!!!Effects:

Equivalent to x << v.(:link http://www.boost.org/libs/tuple/doc/tuple_users_guide.html#accessing_elements|get:)<0>() << ... << v.(:link http://www.boost.org/libs/tuple/doc/tuple_users_guide.html#accessing_elements|get:)<N>().

!!!!Returns:

x.

(:include throws:)
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -4182,249 +4200,301 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>37</size>
+													<size>17</size>
                                                                                                         <variant>2</variant>
-													<string>(:auto !!!:)

When you catch an exception, you can call (:link </string>
+													<string>(:auto !!!:)

The following example demonstrates how errno can be stored in exception objects using Boost Exception:

[@#include <(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-18</id>
+															<id>-26</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) to get an (:link </string>
+													<string>:)>
#include <errno.h>
#include <iostream>

typedef boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-17</id>
+															<id>-31</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) object:

[@#include <(:link </string>
+													<string>:)<struct tag_errno,int> errno_info; //(1)

class my_error: public boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-26</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)>
#include <boost/thread.hpp>
#include <boost/bind.hpp>

void do_work(); //throws cloning-enabled boost::(:link </string>
+													<string>:), public std::exception { }; //(2)

void
f()
    {
    throw my_error() << errno_info(errno); //(3)
    }
@]

First, we instantiate the (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-31</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)s

void
worker_thread( boost::(:link </string>
+													<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.

Second, we define class my_error, which derives from boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-17</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) & error )
    {
    try
        {
        do_work();
        error = boost::(:link </string>
+													<string>:).

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>-17</id>
+															<id>-30</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)();
        }
    catch(
    ... )
        {
        error = boost::(:link </string>
+													<string>|operator<<:) to store values in exception objects at the point of the throw.

The stored errno value can be recovered at a later time like this:

[@// ...continued

void
g()
    {
    try
        {
        f();
        }
    catch(
    my_error & x )
        {
        if( boost::shared_ptr<int const> err=boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-18</id>
+															<id>-29</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)();
        }
    }@]

In the above example, note that (:link </string>
+													<string>:)<errno_info>(x) )
            std::cerr << "Error code: " << *err;
        }
    }@]

The (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-18</id>
+															<id>-29</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>
+													<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.
</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 !!!:)

(:include decl:)

!!!!Effects:

* Default constructor: initializes an empty boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-12</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) function:

[@// ...continued

void
work()
    {
    boost::(:link </string>
+													<string>:) object.
* Copy constructor: initializes a boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-17</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) error;
    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)) );
    t.(:link http://www.boost.org/doc/html/boost/thread.html|join:)();
    if( error )
        boost::(:link </string>
+													<string>:) object which shares with x all data added through (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-12</id>
+															<id>-30</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)(error);
    }@]

Note that (:link </string>
+													<string>|operator<<:), including data that is added at a future time.

!!!!Throws:

Nothing.
</string>
+												</container>
+											</pair>
+											<pair>
+												<weak_ptr>
+													<expired>0</expired>
+													<shared_ptr>
+														<id>-8</id>
+													</shared_ptr>
+												</weak_ptr>
+												<container>
+													<size>1</size>
+													<variant>2</variant>
+													<string>(:auto !!:)

!!!Synopsis

(:include synopsis:)
</string>
+												</container>
+											</pair>
+											<pair>
+												<weak_ptr>
+													<expired>0</expired>
+													<shared_ptr>
+														<id>-9</id>
+													</shared_ptr>
+												</weak_ptr>
+												<container>
+													<size>3</size>
+													<variant>2</variant>
+													<string>(:auto !!!:)

(:include decl:)

!!!!Effects:



Frees all resources associated with a boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-18</id>
+															<id>-11</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>
+													<string>:) object.

!!!!Throws:



Nothing.
</string>
+												</container>
+											</pair>
+											<pair>
+												<weak_ptr>
+													<expired>0</expired>
+													<shared_ptr>
+														<id>-10</id>
+													</shared_ptr>
+												</weak_ptr>
+												<container>
+													<size>5</size>
+													<variant>2</variant>
+													<string>(:auto !!!:)

(:include synopsis:)

!!!!Effects:

As if

[@try
    {
    throw </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-17</id>
+															<id>-13</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) points to an instance of std::bad_alloc, or
* if (:link </string>
+													<string>(e);
    }
catch(...)
    {
    return (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-9</id>
+															<id>-20</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>:)();
    }@]
</string>
+												</container>
+											</pair>
+											<pair>
+												<weak_ptr>
+													<expired>0</expired>
+													<shared_ptr>
+														<id>-11</id>
+													</shared_ptr>
+												</weak_ptr>
+												<container>
+													<size>13</size>
+													<variant>2</variant>
+													<string>(:auto !!!:)

(:include synopsis:)

Class boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-17</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) points to an instance of (:link </string>
+													<string>:) is designed to be used as a universal base for user-defined exception types.

An object of any type deriving from boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-16</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:).

Regardless, the use of (:link </string>
+													<string>:) can store data of arbitrary types, using the (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-18</id>
+															<id>-31</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) and (:link </string>
+													<string>:) wrapper and (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-12</id>
+															<id>-30</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) in the above examples is well-formed.
</string>
-												</container>
-											</pair>
-											<pair>
-												<weak_ptr>
-													<expired>0</expired>
-													<shared_ptr>
-														<id>-7</id>
-													</shared_ptr>
-												</weak_ptr>
-												<container>
-													<size>5</size>
-													<variant>2</variant>
-													<string>(:auto !!!:)

(:include synopsis:)

!!!!Effects:

As if

[@try
    {
    throw </string>
+													<string>|operator<<:).

To retrieve data from a boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-9</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>(e);
    }
catch(...)
    {
    return (:link </string>
+													<string>:) object, use the (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-18</id>
+															<id>-29</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)();
    }@]
</string>
+													<string>:) function template.
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-8</id>
+														<id>-12</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
                                                                                                         <size>7</size>
                                                                                                         <variant>2</variant>
-													<string>(:auto !!!:)

(:include synopsis:)

!!!!Returns:

This function iterates over all data objects stored in the boost::(:link </string>
+													<string>(:auto !!!:)

(:include synopsis:)

This macro takes an exception object, records BOOST_CURRENT_FUNCTION, __FILE__ and __LINE__ in it, and forwards it to </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-33</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) through (:link </string>
+													<string>. To recover this information at the catch site, use </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-27</id>
+															<id>-29</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>|operator<<:). The returned string is constructed by converting each data object to string and then concatenating these strings together.

When the (:link </string>
+													<string>; the information is also included in the message returned by </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-21</id>
+															<id>-14</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)<Tag,T> 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.

Otherwise, the system attempts overload resolution for s << x, where s is a std::ostringstream and x is of type T. If this is successful, the operator<< overload is used to convert objects of type T to string.

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.

!!!!Notes:

*The format of the returned string is unspecified.
*The returned string is ''not'' user-friendly.
*If dynamic_cast<std::exception const *>(&x) is not null, the returned string includes the output from std::exception::what.
*The returned string may include addition
al platform-specific diagnostic information.
</string>
+													<string>.
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-9</id>
+														<id>-13</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -4435,7 +4505,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-17</id>
+															<id>-24</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -4444,7 +4514,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-9</id>
+															<id>-13</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -4453,7 +4523,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-9</id>
+															<id>-13</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -4462,7 +4532,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-18</id>
+															<id>-20</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -4471,7 +4541,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-17</id>
+															<id>-24</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -4480,7 +4550,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-16</id>
+															<id>-37</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -4489,7 +4559,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-18</id>
+															<id>-20</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -4498,7 +4568,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-34</id>
+															<id>-33</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -4507,7 +4577,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -4516,7 +4586,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-17</id>
+															<id>-24</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -4527,300 +4597,256 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-10</id>
+														<id>-14</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>13</size>
+													<size>7</size>
                                                                                                         <variant>2</variant>
-													<string>(:auto !!!:)

(:include synopsis:)

Class boost::(:link </string>
+													<string>(:auto !!!:)

(:include synopsis:)

!!!!Returns:

This function iterates over all data objects stored in the boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) is designed to be used as a universal base for user-defined exception types.

An object of any type deriving from boost::(:link </string>
+													<string>:) through (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-30</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) can store data of arbitrary types, using the (:link </string>
+													<string>|operator<<:). The returned string is constructed by converting each data object to string and then concatenating these strings together.

When the (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-21</id>
+															<id>-31</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) wrapper and (:link </string>
+													<string>:)<Tag,T> 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.

Otherwise, the system attempts overload resolution for s << x, where s is a std::ostringstream and x is of type T. If this is successful, the operator<< overload is used to convert objects of type T to string.

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.

!!!!Notes:

*The format of the returned string is unspecified.
*The returned string is ''not'' user-friendly.
*If dynamic_cast<std::exception const *>(&x) is not null, the returned string includes the output from std::exception::what.
*The returned string may include addition
al platform-specific diagnostic information.
</string>
+												</container>
+											</pair>
+											<pair>
+												<weak_ptr>
+													<expired>0</expired>
+													<shared_ptr>
+														<id>-15</id>
+													</shared_ptr>
+												</weak_ptr>
+												<container>
+													<size>1</size>
+													<variant>2</variant>
+													<string>(:auto !!:)

!!!Synopsis

(:include synopsis:)
</string>
+												</container>
+											</pair>
+											<pair>
+												<weak_ptr>
+													<expired>0</expired>
+													<shared_ptr>
+														<id>-16</id>
+													</shared_ptr>
+												</weak_ptr>
+												<container>
+													<size>17</size>
+													<variant>2</variant>
+													<string>(:auto !!:)

Boost Exception provides a namespace-scope function (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-27</id>
+															<id>-14</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>|operator<<:).

To retrieve data from a boost::(:link </string>
+													<string>:) which takes a boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) object, use the (:link </string>
+													<string>:). The returned string contains:

*the string representation of all data objects added to the boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-25</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) function template.
</string>
-												</container>
-											</pair>
-											<pair>
-												<weak_ptr>
-													<expired>0</expired>
-													<shared_ptr>
-														<id>-11</id>
-													</shared_ptr>
-												</weak_ptr>
-												<container>
-													<size>7</size>
-													<variant>2</variant>
-													<string>(:auto !!!:)

(:include synopsis:)

This macro takes an exception object, records BOOST_CURRENT_FUNCTION, __FILE__ and __LINE__ in it, and forwards it to </string>
+													<string>:) through (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-34</id>
+															<id>-30</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>. To recover this information at the catch site, use </string>
+													<string>|operator<<:);
*the output from std::exception::what;
*additional platform-specific diagnostic information.

The returned string 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:

[@#include <(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-25</id>
+															<id>-26</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>; the information is also included in the message returned by </string>
+													<string>:)>
#include <iostream>

void f(); //throws unknown types that derive from boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-8</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>.
</string>
-												</container>
-											</pair>
-											<pair>
-												<weak_ptr>
-													<expired>0</expired>
-													<shared_ptr>
-														<id>-12</id>
-													</shared_ptr>
-												</weak_ptr>
-												<container>
-													<size>1</size>
-													<variant>2</variant>
-													<string>(:auto !!!:)

(:include synopsis:)

!!!!Precondition:

ep shall not be null.

!!!!Throws:



The exception to which ep refers.
</string>
-												</container>
-											</pair>
-											<pair>
-												<weak_ptr>
-													<expired>0</expired>
-													<shared_ptr>
-														<id>-13</id>
-													</shared_ptr>
-												</weak_ptr>
-												<container>
-													<size>1</size>
-													<variant>2</variant>
-													<string>(:auto !!:)

!!!Synopsis

(:include synopsis:)
</string>
-												</container>
-											</pair>
-											<pair>
-												<weak_ptr>
-													<expired>0</expired>
-													<shared_ptr>
-														<id>-14</id>
-													</shared_ptr>
-												</weak_ptr>
-												<container>
-													<size>1</size>
-													<variant>2</variant>
-													<string>(:auto !!:)

!!!Synopsis

(:include synopsis:)
</string>
-												</container>
-											</pair>
-											<pair>
-												<weak_ptr>
-													<expired>0</expired>
-													<shared_ptr>
-														<id>-15</id>
-													</shared_ptr>
-												</weak_ptr>
-												<container>
-													<size>5</size>
-													<variant>2</variant>
-													<string>(:auto !!!:)

(:include synopsis:)

!!!!Requirements:

E must be boost::(:link </string>
+													<string>:).

void
g()
    {
    try
        {
        f();
        }
    catch(
    boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:), or a type that derives (indirectly) from boost::(:link </string>
+													<string>:) & e )
        {
        std::cerr << (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-14</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:).

!!!!Effects:

Equivalent to x << v.(:link http://www.boost.org/libs/tuple/doc/tuple_users_guide.html#accessing_elements|get:)<0>() << ... << v.(:link http://www.boost.org/libs/tuple/doc/tuple_users_guide.html#accessing_elements|get:)<N>().

!!!!Returns:

x.

(:include throws:)
</string>
+													<string>:)(e);
        }
    }@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-16</id>
+														<id>-17</id>
+													</shared_ptr>
+												</weak_ptr>
+												<container>
+													<size>1</size>
+													<variant>2</variant>
+													<string>(:auto !!:)

!!!Synopsis

(:include synopsis:)
</string>
+												</container>
+											</pair>
+											<pair>
+												<weak_ptr>
+													<expired>0</expired>
+													<shared_ptr>
+														<id>-18</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
                                                                                                         <size>5</size>
                                                                                                         <variant>2</variant>
-													<string>(:auto !!!:)

(:include synopsis:)

This type is used by the (:link </string>
+													<string>(:auto !!!:)

(:include synopsis:)

!!!!Requirements:

T must be a class with an accessible no-throw copy constructor as per (15.5.1).

!!!!Returns:

* If T derives from boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-17</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) support in Boost Exception. Please see (:link </string>
+													<string>:), the returned object is of type T and is a copy of x.
* Otherwise, the returned object is of an unspecified type that derives publicly from both T and boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-18</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:).
</string>
+													<string>:). The T sub-object is initialized from x by the T copy constructor.

!!!!Throws:

Nothing.
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-17</id>
+														<id>-19</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>17</size>
-													<variant>2</variant>
-													<string>(:auto !!!:)

(:include synopsis:)

The (:link </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-17</id>
-														</shared_ptr>
-													</weak_ptr>
-													<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>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-17</id>
-														</shared_ptr>
-													</weak_ptr>
+													<size>13</size>
                                                                                                         <variant>2</variant>
-													<string>:)'s operations do not throw.

Two instances of (:link </string>
+													<string>(:auto !!!:)

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:

[@#include <(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-17</id>
+															<id>-8</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) are equivalent and compare equal if and only if they refer to the same exception.

The default constructor of (:link </string>
+													<string>:)>
#include <boost/shared_ptr.hpp>
#include <stdio.h>
#include <string>
#include <errno.h>

typedef boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-17</id>
+															<id>-31</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) produces the null value of the type. The null value is equivalent only to itself.

!!!!Thread safety

* It is legal for multiple threads to hold (:link </string>
+													<string>:)<struct tag_file_name,std::string> file_name_info;
typedef boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-17</id>
+															<id>-31</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) references to the same exception object.
* It is illegal for multiple threads to modify the same (:link </string>
+													<string>:)<struct tag_function,char const *> function_info;
typedef boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-17</id>
+															<id>-31</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) object concurrently.
* While calling </string>
+													<string>:)<struct tag_errno,int> errno_info;
typedef boost::tuple<function_info,errno_info> clib_failure;

class file_open_error: public boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-18</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string> makes a copy of the current exception object, it is still possible for the two copies to share internal state. Therefore, in general it is not safe to call </string>
+													<string>:) { };

boost::shared_ptr<FILE>
file_open( char const * name, char const * mode )
    {
    if( FILE * f=fopen(name,mode) )
        return boost::shared_ptr<FILE>(f,fclose);
    else
        throw file_open_error() <<
            file_name_info(name) <<
            clib_failure("fopen",errno);
    }@]

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>-12</id>
+															<id>-29</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string> to throw the same exception object concurrently into multiple threads.
</string>
+													<string>:).
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-18</id>
+														<id>-20</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -4831,7 +4857,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-18</id>
+															<id>-20</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -4840,7 +4866,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-17</id>
+															<id>-24</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -4849,7 +4875,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-17</id>
+															<id>-24</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -4858,7 +4884,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-18</id>
+															<id>-20</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -4867,7 +4893,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-18</id>
+															<id>-20</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -4876,7 +4902,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-9</id>
+															<id>-13</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -4885,7 +4911,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-9</id>
+															<id>-13</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -4894,7 +4920,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-18</id>
+															<id>-20</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -4903,7 +4929,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-17</id>
+															<id>-24</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -4912,7 +4938,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-16</id>
+															<id>-37</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -4921,7 +4947,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -4930,7 +4956,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -4939,7 +4965,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-16</id>
+															<id>-37</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -4948,7 +4974,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -4959,76 +4985,45 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-19</id>
-													</shared_ptr>
-												</weak_ptr>
-												<container>
-													<size>5</size>
-													<variant>2</variant>
-													<string>(:auto !!!:)

(:include synopsis:)

!!!!Requirements:

T must be a class with an accessible no-throw copy constructor as per (15.5.1).

!!!!Returns:

* If T derives from boost::(:link </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-10</id>
-														</shared_ptr>
-													</weak_ptr>
-													<variant>2</variant>
-													<string>:), the returned object is of type T and is a copy of x.
* Otherwise, the returned object is of an unspecified type that derives publicly from both T and boost::(:link </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-10</id>
-														</shared_ptr>
-													</weak_ptr>
-													<variant>2</variant>
-													<string>:). The T sub-object is initialized from x by the T copy constructor.

!!!!Throws:

Nothing.
</string>
-												</container>
-											</pair>
-											<pair>
-												<weak_ptr>
-													<expired>0</expired>
-													<shared_ptr>
-														<id>-20</id>
+														<id>-21</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
                                                                                                         <size>11</size>
                                                                                                         <variant>2</variant>
-													<string>(:auto !!:)

All exception types that derive from boost::(:link </string>
+													<string>(:auto !!:)

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>-10</id>
+															<id>-13</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <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>:) at the time of the throw is required in order to use cloning.

!!!!Note:

All exceptions emitted by the familiar function boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-33</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) at the time of the throw, or at a later time.

(:include </string>
+													<string>:) are guaranteed to derive from boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-28</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)
(:include </string>
+													<string>:) and to support cloning.

(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-24</id>
+															<id>-25</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -5037,7 +5032,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-41</id>
+															<id>-22</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -5048,401 +5043,377 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-21</id>
+														<id>-22</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>25</size>
+													<size>37</size>
                                                                                                         <variant>2</variant>
-													<string>(:auto !!!:)

(:include synopsis:)

!!!!Requirements:

T must have accessible copy constructor and must not be a reference (there is no requirement that T's copy constructor does not throw.)

!!!!Description:

This class template is used to associate a Tag type with a value type T. Objects of type (:link </string>
+													<string>(:auto !!!:)

When you catch an exception, you can call (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-21</id>
+															<id>-20</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)<Tag,T> can be passed to (:link </string>
+													<string>:) to get an (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-27</id>
+															<id>-24</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>|operator<<:) to be stored in objects of type boost::(:link </string>
+													<string>:) object:

[@#include <(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-28</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:).

!!!!Note:

The header <(:link </string>
+													<string>:)>
#include <boost/thread.hpp>
#include <boost/bind.hpp>

void do_work(); //throws cloning-enabled boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-5</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)> provides a declaration of the (:link </string>
+													<string>:)s

void
worker_thread( boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-21</id>
+															<id>-24</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:

[@#include <(:link </string>
+													<string>:) & error )
    {
    try
        {
        do_work();
        error = boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-5</id>
+															<id>-24</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)>

typedef boost::(:link </string>
+													<string>:)();
        }
    catch(
    ... )
        {
        error = boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-21</id>
+															<id>-20</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)<struct tag_errno,int> errno_info;@]

Of course, to actually add an (:link </string>
+													<string>:)();
        }
    }@]

In the above example, note that (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-21</id>
+															<id>-20</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) object to (:link </string>
+													<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>-10</id>
+															<id>-36</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string> mod="p":) using (:link </string>
+													<string>:) function:

[@// ...continued

void
work()
    {
    boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-27</id>
+															<id>-24</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>|operator<<:), or to retrieve it using (:link </string>
+													<string>:) error;
    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)) );
    t.(:link http://www.boost.org/doc/html/boost/thread.html|join:)();
    if( error )
        boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-25</id>
+															<id>-36</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:), you must first #include <(:link </string>
+													<string>:)(error);
    }@]

Note that (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-37</id>
+															<id>-20</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)>.
</string>
-												</container>
-											</pair>
-											<pair>
-												<weak_ptr>
-													<expired>0</expired>
-													<shared_ptr>
-														<id>-22</id>
-													</shared_ptr>
-												</weak_ptr>
-												<container>
-													<size>7</size>
-													<variant>2</variant>
-													<string>(:auto !!!:)

(:include decl:)

!!!!Effects:

* Default constructor: initializes an empty boost::(:link </string>
+													<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>-10</id>
+															<id>-24</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) object.
* Copy constructor: initializes a boost::(:link </string>
+													<string>:) points to an instance of std::bad_alloc, or
* if (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-13</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) object which shares with x all data added through (:link </string>
+													<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>-27</id>
+															<id>-24</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>|operator<<:), including data that is added at a future time.

!!!!Throws:

Nothing.
</string>
-												</container>
-											</pair>
-											<pair>
-												<weak_ptr>
-													<expired>0</expired>
-													<shared_ptr>
-														<id>-23</id>
-													</shared_ptr>
-												</weak_ptr>
-												<container>
-													<size>27</size>
-													<variant>2</variant>
-													<string>(:auto !!:)

Some exception hierarchies can not be modified to make boost::(:link </string>
+													<string>:) points to an instance of (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-37</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) a base type. In this case, the (:link </string>
+													<string>:).

Regardless, the use of (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-19</id>
+															<id>-20</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) function template can be used to make exception objects derive from boost::(:link </string>
+													<string>:) and (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-36</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) anyway. Here is an example:

[@#include <(:link </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-14</id>
-														</shared_ptr>
-													</weak_ptr>
+													<string>:) in the above examples is well-formed.
</string>
+												</container>
+											</pair>
+											<pair>
+												<weak_ptr>
+													<expired>0</expired>
+													<shared_ptr>
+														<id>-23</id>
+													</shared_ptr>
+												</weak_ptr>
+												<container>
+													<size>1</size>
                                                                                                         <variant>2</variant>
-													<string>:)>
#include <stdexcept>

typedef boost::(:link </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-21</id>
-														</shared_ptr>
-													</weak_ptr>
+													<string>(:auto !!:)

!!!Synopsis

(:include synopsis:)
</string>
+												</container>
+											</pair>
+											<pair>
+												<weak_ptr>
+													<expired>0</expired>
+													<shared_ptr>
+														<id>-24</id>
+													</shared_ptr>
+												</weak_ptr>
+												<container>
+													<size>17</size>
                                                                                                         <variant>2</variant>
-													<string>:)<struct tag_std_range_min,size_t> std_range_min;
typedef boost::(:link </string>
+													<string>(:auto !!!:)

(:include synopsis:)

The (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-21</id>
+															<id>-24</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)<struct tag_std_range_max,size_t> std_range_max;
typedef boost::(: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>-21</id>
+															<id>-24</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)<struct tag_std_range_index,size_t> std_range_index;

template <class T>
class
my_container
    {
    public:

    size_t size() const;

    T const &
    operator[]( size_t i ) const
        {
        if( i > size() )
            throw boost::(:link </string>
+													<string>:)'s operations do not throw.

Two instances of (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-19</id>
+															<id>-24</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)(std::range_error("Index out of range")) <<
                std_range_min(0) <<
                std_range_max(size()) <<
                std_range_index(i);
        //....
        }
    };
@]

The call to (:link </string>
+													<string>:) are equivalent and compare equal if and only if they refer to the same exception.

The default constructor of (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-19</id>
+															<id>-24</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)<T> gets us an object of ''unspecified type'' which is guaranteed to derive from both boost::(:link </string>
+													<string>:) produces the null value of the type. The null value is equivalent only to itself.

!!!!Thread safety

* It is legal for multiple threads to hold (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-24</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) and T. This makes it possible to use (:link </string>
+													<string>:) references to the same exception object.
* It is illegal for multiple threads to modify the same (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-27</id>
+															<id>-24</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>|operator<<:) to store additional information in the exception object. The exception can be intercepted as T &, so existing exception handling will not break. It can also be intercepted as boost::(:link </string>
+													<string>:) object concurrently.
* While calling </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-20</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) &, so that (:link </string>
+													<string> makes a copy of the current exception object, it is still possible for the two copies to share internal state. Therefore, in general it is not safe to call </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-20</id>
+															<id>-36</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>|more information can be added to the exception at a later time:).
</string>
+													<string> to throw the same exception object concurrently into multiple threads.
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-24</id>
+														<id>-25</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>21</size>
+													<size>11</size>
                                                                                                         <variant>2</variant>
-													<string>(:auto !!!:)

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:

[@#include <stdio.h>
#include <string>
        
class
file_read_error
    {
    public:

    explicit
    file_read_error( std::string const & fn ):
        fn_(fn)
        {
        };

    std::string const &
    file_name() const
        {
        return fn_;
        }

    private:

    std::string fn_;
    };

void
file_read( FILE * f, void * buffer, size_t size )
    {
    if( size!=fread(buffer,1,size,f) )
        throw file_read_error("????");
    }@]

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.

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.)

A better solution is to make class file_read_error derive (possibly indirectly) from boost::(:link </string>
+													<string>(:auto !!!:)

Here is how cloning can be enabled in a throw-expression (15.1):

[@#include <(: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>:), and free the file_read function from the burden of storing the file name in exceptions it throws:

[@#include <(:link </string>
+													<string>:)>
#include <stdio.h>
#include <errno.h>

typedef boost::error_info<struct tag_errno,int> errno_info;

class file_read_error: public boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-14</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)>
#include <stdio.h>
#include <errno.h>

typedef boost::(:link </string>
+													<string>:) { };

void
file_read( FILE * f, void * buffer, size_t size )
    {
    if( size!=fread(buffer,1,size,f) )
        throw boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-21</id>
+															<id>-13</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)<struct tag_errno,int> errno_info;

class file_read_error: public boost::(:link </string>
+													<string>:)(file_read_error()) <<
            errno_info(errno);
    }@]

Of course, (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-13</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) { };

void
file_read( FILE * f, void * buffer, size_t size )
    {
    if( size!=fread(buffer,1,size,f) )
        throw file_read_error() << errno_info(errno);
    }@]

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:

[@#include <(:link </string>
+													<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>-14</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)>
#include <boost/shared_ptr.hpp>
#include <stdio.h>
#include <string>

typedef boost::(:link </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-21</id>
-														</shared_ptr>
-													</weak_ptr>
-													<variant>2</variant>
-													<string>:)<struct tag_file_name,std::string> file_name_info;

boost::shared_ptr<FILE> file_open( char const * file_name, char const * mode );
void file_read( FILE * f, void * buffer, size_t size );

void
parse_file( char const * file_name )
    {
    boost::shared_ptr<FILE> f = file_open(file_name,"rb");
    assert(f);
    try
        {
        char buf[1024];
        file_read( f.get(), buf, sizeof(buf) );
        }
    catch(
    boost::(:link </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-10</id>
-														</shared_ptr>
-													</weak_ptr>
-													<variant>2</variant>
-													<string>:) & e )
        {
        e << file_name_info(file_name);
        throw;
        }
    }@]

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>-10</id>
-														</shared_ptr>
-													</weak_ptr>
+													<string>:).
</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>:) 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>-10</id>
-														</shared_ptr>
-													</weak_ptr>
+													<string>(:auto !!:)

!!!Synopsis

(:include synopsis:)
</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>:) object is that the file name is relevant to any failure that occurs in parse_file, ''even if the failure is unrelated to file I/O''.

As usual, the stored data can be retrieved using (:link </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-25</id>
-														</shared_ptr>
-													</weak_ptr>
+													<string>(:auto !!:)

!!!Synopsis

(:include synopsis:)
</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>:).
</string>
+													<string>(:auto !!:)

!!!Synopsis

(:include synopsis:)
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-25</id>
+														<id>-29</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -5453,7 +5424,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-21</id>
+															<id>-31</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -5462,7 +5433,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-25</id>
+															<id>-29</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -5471,7 +5442,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -5480,7 +5451,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-27</id>
+															<id>-30</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -5491,20 +5462,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-26</id>
-													</shared_ptr>
-												</weak_ptr>
-												<container>
-													<size>1</size>
-													<variant>2</variant>
-													<string>(:auto !!:)

!!!Synopsis

(:include synopsis:)
</string>
-												</container>
-											</pair>
-											<pair>
-												<weak_ptr>
-													<expired>0</expired>
-													<shared_ptr>
-														<id>-27</id>
+														<id>-30</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -5515,7 +5473,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -5524,7 +5482,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -5533,7 +5491,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-21</id>
+															<id>-31</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -5544,92 +5502,152 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-28</id>
+														<id>-31</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>17</size>
+													<size>25</size>
                                                                                                         <variant>2</variant>
-													<string>(:auto !!!:)

The following example demonstrates how errno can be stored in exception objects using Boost Exception:

[@#include <(:link </string>
+													<string>(:auto !!!:)

(:include synopsis:)

!!!!Requirements:

T must have accessible copy constructor and must not be a reference (there is no requirement that T's copy constructor does not throw.)

!!!!Description:

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>-14</id>
+															<id>-31</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)>
#include <errno.h>
#include <iostream>

typedef boost::(:link </string>
+													<string>:)<Tag,T> can be passed to (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-21</id>
+															<id>-30</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)<struct tag_errno,int> errno_info; //(1)

class my_error: public boost::(:link </string>
+													<string>|operator<<:) to be stored in objects of type boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:), public std::exception { }; //(2)

void
f()
    {
    throw my_error() << errno_info(errno); //(3)
    }
@]

First, we instantiate the (:link </string>
+													<string>:).

!!!!Note:

The header <(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-21</id>
+															<id>-39</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.

Second, we define class my_error, which derives from boost::(:link </string>
+													<string>:)> provides a declaration of the (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-31</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:).

Finally, (3) illustrates how the typedef from (1) can be used with (:link </string>
+													<string>:) template, which is sufficient for the purpose of typedefing an instance for specific Tag and T, like this:

[@#include <(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-27</id>
+															<id>-39</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>|operator<<:) to store values in exception objects at the point of the throw.

The stored errno value can be recovered at a later time like this:

[@// ...continued

void
g()
    {
    try
        {
        f();
        }
    catch(
    my_error & x )
        {
        if( boost::shared_ptr<int const> err=boost::(:link </string>
+													<string>:)>

typedef boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-25</id>
+															<id>-31</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)<errno_info>(x) )
            std::cerr << "Error code: " << *err;
        }
    }@]

The (:link </string>
+													<string>:)<struct tag_errno,int> errno_info;@]

Of course, to actually add an (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-25</id>
+															<id>-31</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.
</string>
+													<string>:) object to (:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-11</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string> mod="p":) using (:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-30</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string>|operator<<:), or to retrieve it using (:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-29</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string>:), you must first #include <(:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-15</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string>:)>.
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-29</id>
+														<id>-32</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>1</size>
+													<variant>2</variant>
+													<string>(:auto !!!:)

(:include synopsis:)

!!!!Precondition:

ep shall not be null.

!!!!Throws:



The exception to which ep refers.
</string>
+												</container>
+											</pair>
+											<pair>
+												<weak_ptr>
+													<expired>0</expired>
+													<shared_ptr>
+														<id>-38</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -5642,122 +5660,103 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-30</id>
+														<id>-35</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>11</size>
+													<size>27</size>
                                                                                                         <variant>2</variant>
-													<string>(:auto !!!:)

Here is how cloning can be enabled in a throw-expression (15.1):

[@#include <(:link </string>
+													<string>(:auto !!:)

Some exception hierarchies can not be modified to make boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-37</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)>
#include <stdio.h>
#include <errno.h>

typedef boost::error_info<struct tag_errno,int> errno_info;

class file_read_error: public boost::(:link </string>
+													<string>:) a base type. In this case, the (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-18</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) { };

void
file_read( FILE * f, void * buffer, size_t size )
    {
    if( size!=fread(buffer,1,size,f) )
        throw boost::(: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>-9</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)(file_read_error()) <<
            errno_info(errno);
    }@]

Of course, (:link </string>
+													<string>:) anyway. Here is an example:

[@#include <(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-9</id>
+															<id>-26</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>
+													<string>:)>
#include <stdexcept>

typedef boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-31</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:).
</string>
-												</container>
-											</pair>
-											<pair>
-												<weak_ptr>
-													<expired>0</expired>
-													<shared_ptr>
-														<id>-31</id>
-													</shared_ptr>
-												</weak_ptr>
-												<container>
-													<size>1</size>
+													<string>:)<struct tag_std_range_min,size_t> std_range_min;
typedef boost::(:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-31</id>
+														</shared_ptr>
+													</weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>(:auto !!:)

!!!Synopsis

(:include synopsis:)
</string>
-												</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>11</size>
+													<string>:)<struct tag_std_range_max,size_t> std_range_max;
typedef boost::(:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-31</id>
+														</shared_ptr>
+													</weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>(:auto !!:)

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>:)<struct tag_std_range_index,size_t> std_range_index;

template <class T>
class
my_container
    {
    public:

    size_t size() const;

    T const &
    operator[]( size_t i ) const
        {
        if( i > size() )
            throw boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-9</id>
+															<id>-18</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) at the time of the throw is required in order to use cloning.

!!!!Note:

All exceptions emitted by the familiar function boost::(:link </string>
+													<string>:)(std::range_error("Index out of range")) <<
                std_range_min(0) <<
                std_range_max(size()) <<
                std_range_index(i);
        //....
        }
    };
@]

The call to (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-34</id>
+															<id>-18</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) are guaranteed to derive from boost::(:link </string>
+													<string>:)<T> gets us an object of ''unspecified type'' which is guaranteed to derive from both boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) and to support cloning.

(:include </string>
+													<string>:) and T. This makes it possible to use (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
@@ -5766,181 +5765,197 @@
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)
(:include </string>
+													<string>|operator<<:) to store additional information in the exception object. The exception can be intercepted as T &, 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>-6</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)
</string>
+													<string>:) &, so that (:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-34</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string>|more information can be added to the exception at a later time:).
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-34</id>
+														<id>-41</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>13</size>
+													<size>21</size>
                                                                                                         <variant>2</variant>
-													<string>(:auto !!!:)

(:include synopsis:)

!!!!Requirements:

E must derive publicly from std::exception.

!!!!Effects:

* If BOOST_NO_EXCEPTIONS is not defined, boost::(:link </string>
+													<string>(:auto !!!:)

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:

[@#include <stdio.h>
#include <string>
        
class
file_read_error
    {
    public:

    explicit
    file_read_error( std::string const & fn ):
        fn_(fn)
        {
        };

    std::string const &
    file_name() const
        {
        return fn_;
        }

    private:

    std::string fn_;
    };

void
file_read( FILE * f, void * buffer, size_t size )
    {
    if( size!=fread(buffer,1,size,f) )
        throw file_read_error("????");
    }@]

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.

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.)

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>-34</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)(e) is equivalent to throw boost::(:link </string>
+													<string>:), and free the file_read function from the burden of storing the file name in exceptions it throws:

[@#include <(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-9</id>
+															<id>-26</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)(boost::(:link </string>
+													<string>:)>
#include <stdio.h>
#include <errno.h>

typedef boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-19</id>
+															<id>-31</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string>:)<struct tag_errno,int> errno_info;

class file_read_error: public boost::(:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)(e)), unless BOOST_EXCEPTION_DISABLE is defined, in which case boost::(:link </string>
+													<string>:) { };

void
file_read( FILE * f, void * buffer, size_t size )
    {
    if( size!=fread(buffer,1,size,f) )
        throw file_read_error() << errno_info(errno);
    }@]

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:

[@#include <(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-34</id>
+															<id>-26</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)(e) is equivalent to throw e;
* If BOOST_NO_EXCEPTIONS is defined, the function is left undefined, and the user is expected to supply an appropriate definition. Callers of (:link </string>
+													<string>:)>
#include <boost/shared_ptr.hpp>
#include <stdio.h>
#include <string>

typedef boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-34</id>
+															<id>-31</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) are allowed to assume that the function never returns; therefore, if the user-defined (:link </string>
+													<string>:)<struct tag_file_name,std::string> file_name_info;

boost::shared_ptr<FILE> file_open( char const * file_name, char const * mode );
void file_read( FILE * f, void * buffer, size_t size );

void
parse_file( char const * file_name )
    {
    boost::shared_ptr<FILE> f = file_open(file_name,"rb");
    assert(f);
    try
        {
        char buf[1024];
        file_read( f.get(), buf, sizeof(buf) );
        }
    catch(
    boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-34</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) returns, the behavior is undefined.
</string>
-												</container>
-											</pair>
-											<pair>
-												<weak_ptr>
-													<expired>0</expired>
-													<shared_ptr>
-														<id>-35</id>
-													</shared_ptr>
-												</weak_ptr>
-												<container>
-													<size>17</size>
-													<variant>2</variant>
-													<string>(:auto !!:)

Boost Exception provides a namespace-scope function (:link </string>
+													<string>:) & e )
        {
        e << file_name_info(file_name);
        throw;
        }
    }@]

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>-8</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) which takes a 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>-10</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:). The returned string contains:

*the string representation of all data objects added to the boost::(:link </string>
+													<string>:) object is that the file name is relevant to any failure that occurs in parse_file, ''even if the failure is unrelated to file I/O''.

As usual, the stored data can be retrieved using (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-29</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) through (:link </string>
+													<string>:).
</string>
+												</container>
+											</pair>
+											<pair>
+												<weak_ptr>
+													<expired>0</expired>
+													<shared_ptr>
+														<id>-34</id>
+													</shared_ptr>
+												</weak_ptr>
+												<container>
+													<size>11</size>
+													<variant>2</variant>
+													<string>(:auto !!:)

All exception types that derive from boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-27</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>|operator<<:);
*the output from std::exception::what;
*additional platform-specific diagnostic information.

The returned string 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:

[@#include <(: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>-14</id>
+															<id>-11</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)>
#include <iostream>

void f(); //throws unknown types that derive from boost::(:link </string>
+													<string>:) at the time of the throw, or at a later time.

(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-6</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:).

void
g()
    {
    try
        {
        f();
        }
    catch(
    boost::(:link </string>
+													<string>:)
(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-41</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) & e )
        {
        std::cerr << (:link </string>
+													<string>:)
(:include </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-8</id>
+															<id>-19</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)(e);
        }
    }@]
</string>
+													<string>:)
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-36</id>
+														<id>-40</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>1</size>
-													<variant>2</variant>
-													<string>(:auto !!:)

!!!Synopsis

(:include synopsis:)
</string>
+													<size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -5951,22 +5966,27 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>1</size>
+													<size>5</size>
                                                                                                         <variant>2</variant>
-													<string>(:auto !!:)

!!!Synopsis

(:include synopsis:)
</string>
-												</container>
-											</pair>
-											<pair>
-												<weak_ptr>
-													<expired>0</expired>
-													<shared_ptr>
-														<id>-38</id>
-													</shared_ptr>
-												</weak_ptr>
-												<container>
-													<size>1</size>
+													<string>(:auto !!!:)

(:include synopsis:)

This type is used by the (:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-24</id>
+														</shared_ptr>
+													</weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>(:auto !!:)

!!!Synopsis

(:include synopsis:)
</string>
+													<string>:) support in Boost Exception. Please see (:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-20</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string>:).
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -5977,96 +5997,76 @@
                                                                                                         </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>(:auto !!!:)

(:include decl:)

!!!!Effects:



Frees all resources associated with a boost::(:link </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-10</id>
-														</shared_ptr>
-													</weak_ptr>
+													<size>1</size>
                                                                                                         <variant>2</variant>
-													<string>:) object.

!!!!Throws:



Nothing.
</string>
+													<string>(:auto !!:)

!!!Synopsis

(:include synopsis:)
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-41</id>
+														<id>-33</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
                                                                                                         <size>13</size>
                                                                                                         <variant>2</variant>
-													<string>(:auto !!!:)

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:

[@#include <(:link </string>
+													<string>(:auto !!!:)

(:include synopsis:)

!!!!Requirements:

E must derive publicly from std::exception.

!!!!Effects:

* If BOOST_NO_EXCEPTIONS is not defined, boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-29</id>
+															<id>-33</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)>
#include <boost/shared_ptr.hpp>
#include <stdio.h>
#include <string>
#include <errno.h>

typedef boost::(:link </string>
+													<string>:)(e) is equivalent to throw boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-21</id>
+															<id>-13</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)<struct tag_file_name,std::string> file_name_info;
typedef boost::(:link </string>
+													<string>:)(boost::(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-21</id>
+															<id>-18</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)<struct tag_function,char const *> function_info;
typedef boost::(:link </string>
+													<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>-21</id>
+															<id>-33</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)<struct tag_errno,int> errno_info;
typedef boost::tuple<function_info,errno_info> clib_failure;

class file_open_error: public boost::(:link </string>
+													<string>:)(e) is equivalent to throw e;
* If BOOST_NO_EXCEPTIONS is defined, the function is left undefined, and the user is expected to supply an appropriate definition. Callers of (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-10</id>
+															<id>-33</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:) { };

boost::shared_ptr<FILE>
file_open( char const * name, char const * mode )
    {
    if( FILE * f=fopen(name,mode) )
        return boost::shared_ptr<FILE>(f,fclose);
    else
        throw file_open_error() <<
            file_name_info(name) <<
            clib_failure("fopen",errno);
    }@]

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>:) are allowed to assume that the function never returns; therefore, if the user-defined (:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-25</id>
+															<id>-33</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:).
</string>
+													<string>:) returns, the behavior is undefined.
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                 </sorted>
@@ -6091,7 +6091,9 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>0</size>
+													<size>1</size>
+													<variant>2</variant>
+													<string>!!!!Throws:

std::bad_alloc, or any exception emitted by T1..TN copy constructor.
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -6201,9 +6203,7 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>1</size>
-													<variant>2</variant>
-													<string>!!!!Throws:

std::bad_alloc, or any exception emitted by T1..TN copy constructor.
</string>
+													<size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -6335,9 +6335,7 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>1</size>
-													<variant>2</variant>
-													<string>!!!!Throws:

std::bad_alloc, or any exception emitted by the T copy constructor.
</string>
+													<size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -6370,7 +6368,9 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>0</size>
+													<size>1</size>
+													<variant>2</variant>
+													<string>!!!!Throws:

std::bad_alloc, or any exception emitted by the T copy constructor.
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -6399,7 +6399,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-33</id>
+														<id>-36</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -6410,7 +6410,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-34</id>
+														<id>-38</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -6432,7 +6432,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-36</id>
+														<id>-41</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -6443,7 +6443,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-37</id>
+														<id>-34</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -6454,7 +6454,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-38</id>
+														<id>-40</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -6465,7 +6465,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-39</id>
+														<id>-37</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -6476,7 +6476,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-40</id>
+														<id>-39</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -6487,7 +6487,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-41</id>
+														<id>-33</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -6516,9 +6516,27 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>1</size>
+													<size>5</size>
                                                                                                         <variant>2</variant>
-													<string>[@namespace
boost
    {
(:include api pre_indent="4":)
    }@]
</string>
+													<string>`#include <(:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-8</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string>:)>

[@namespace
boost
    {
(:include </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-5</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string> decl pre_indent="4":)
    }@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -6540,6 +6558,41 @@
                                                                                                         </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>1</size>
+													<variant>2</variant>
+													<string>[@#include <boost/tuple/tuple.hpp>

namespace
boost
    {
(:include api pre_indent="4":)
    }@]
</string>
+												</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>3</size>
                                                                                                         <variant>2</variant>
                                                                                                         <string>`#include <(:link </string>
@@ -6547,7 +6600,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-26</id>
+															<id>-28</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -6558,7 +6611,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-8</id>
+														<id>-11</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -6569,18 +6622,18 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-31</id>
+															<id>-17</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)>\\

[@namespace
boost
    {
(:include decl pre_indent="4":)
    }@]
</string>
+													<string>:)>

[@namespace
boost
    {
(:include def pre_indent="4":)
    }@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-9</id>
+														<id>-12</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -6591,46 +6644,46 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-13</id>
+															<id>-27</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>>

[@namespace
boost
    {
(:include decl pre_indent="4":)
    }@]
</string>
+													<string>>

(:include decl:)
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-10</id>
+														<id>-13</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
                                                                                                         <size>3</size>
                                                                                                         <variant>2</variant>
-													<string>`#include <(:link </string>
+													<string>`#include <</string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-13</id>
+															<id>-17</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)>

[@namespace
boost
    {
(:include def pre_indent="4":)
    }@]
</string>
+													<string>>

[@namespace
boost
    {
(:include decl pre_indent="4":)
    }@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-11</id>
+														<id>-14</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
                                                                                                         <size>3</size>
                                                                                                         <variant>2</variant>
-													<string>`#include <</string>
+													<string>`#include <(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
@@ -6639,115 +6692,93 @@
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>>

(:include decl:)
</string>
+													<string>:)>\\

[@namespace
boost
    {
(:include decl pre_indent="4":)
    }@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-12</id>
+														<id>-15</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
                                                                                                         <size>3</size>
                                                                                                         <variant>2</variant>
-													<string>`#include <(:link </string>
+													<string>[@#include <(: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>:)>

[@namespace
boost
    {
(:include decl pre_indent="4":)
    }@]
</string>
+													<string>:)>
#include <boost/current_function.hpp>
#include <boost/shared_ptr.hpp>

namespace
boost
    {
(:include api pre_indent="4":)
    }@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-13</id>
+														<id>-16</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>1</size>
-													<variant>2</variant>
-													<string>[@namespace
boost
    {
(:include api pre_indent="4":)
    }@]
</string>
+													<size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-14</id>
+														<id>-17</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
                                                                                                         <size>1</size>
                                                                                                         <variant>2</variant>
-													<string>[@(:include api:)@]
</string>
+													<string>[@namespace
boost
    {
(:include api pre_indent="4":)
    }@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-15</id>
+														<id>-18</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>5</size>
-													<variant>2</variant>
-													<string>`#include <(:link </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-29</id>
-														</shared_ptr>
-													</weak_ptr>
+													<size>3</size>
                                                                                                         <variant>2</variant>
-													<string>:)>

[@namespace
boost
    {
(:include </string>
+													<string>`#include <</string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-15</id>
+															<id>-17</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string> decl pre_indent="4":)
    }@]
</string>
+													<string>>

[@namespace
boost
    {
(:include decl pre_indent="4":)
    }@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-16</id>
+														<id>-19</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>3</size>
-													<variant>2</variant>
-													<string>`#include <(:link </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-26</id>
-														</shared_ptr>
-													</weak_ptr>
-													<variant>2</variant>
-													<string>:)>

[@namespace
boost
    {
(:include decl pre_indent="4":)
    }@]
</string>
+													<size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-17</id>
+														<id>-20</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -6758,7 +6789,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-26</id>
+															<id>-28</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -6769,62 +6800,42 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-18</id>
+														<id>-21</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>3</size>
-													<variant>2</variant>
-													<string>`#include <(:link </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-26</id>
-														</shared_ptr>
-													</weak_ptr>
-													<variant>2</variant>
-													<string>:)>

[@namespace
boost
    {
(:include decl pre_indent="4":)
    }@]
</string>
+													<size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-19</id>
+														<id>-22</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>-13</id>
-														</shared_ptr>
-													</weak_ptr>
-													<variant>2</variant>
-													<string>>

[@namespace
boost
    {
(:include decl pre_indent="4":)
    }@]
</string>
+													<size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-20</id>
+														<id>-23</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>0</size>
+													<size>1</size>
+													<variant>2</variant>
+													<string>[@#include <boost/shared_ptr.hpp>

namespace
boost
    {
(:include api pre_indent="4":)
    }@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-21</id>
+														<id>-24</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -6835,18 +6846,18 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-37</id>
+															<id>-28</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)>

[@namespace
boost
    {
(:include def pre_indent="4":)
    }@]
</string>
+													<string>:)>

[@namespace
boost
    {
(:include decl pre_indent="4":)
    }@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-22</id>
+														<id>-25</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -6857,73 +6868,77 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-23</id>
+														<id>-26</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>0</size>
+													<size>1</size>
+													<variant>2</variant>
+													<string>[@(:include api:)@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-24</id>
+														<id>-27</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>0</size>
+													<size>1</size>
+													<variant>2</variant>
+													<string>(:include api:)
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-25</id>
+														<id>-28</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
                                                                                                         <size>3</size>
                                                                                                         <variant>2</variant>
-													<string>`#include <</string>
+													<string>[@#include <(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-36</id>
+															<id>-17</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>>

[@namespace
boost
    {
(:include decl pre_indent="4":)
    }@]
</string>
+													<string>:)>

namespace
boost
    {
(:include api pre_indent="4":)
    }@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-26</id>
+														<id>-29</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
                                                                                                         <size>3</size>
                                                                                                         <variant>2</variant>
-													<string>[@#include <(:link </string>
+													<string>`#include <</string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-13</id>
+															<id>-23</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)>

namespace
boost
    {
(:include api pre_indent="4":)
    }@]
</string>
+													<string>>

[@namespace
boost
    {
(:include decl pre_indent="4":)
    }@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-27</id>
+														<id>-30</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -6934,7 +6949,7 @@
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-37</id>
+															<id>-15</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
@@ -6945,42 +6960,62 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-28</id>
+														<id>-31</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>0</size>
+													<size>3</size>
+													<variant>2</variant>
+													<string>`#include <(:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-15</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string>:)>

[@namespace
boost
    {
(:include def pre_indent="4":)
    }@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-29</id>
+														<id>-32</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>1</size>
-													<variant>2</variant>
-													<string>[@#include <boost/tuple/tuple.hpp>

namespace
boost
    {
(:include api pre_indent="4":)
    }@]
</string>
+													<size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-30</id>
+														<id>-36</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>0</size>
+													<size>3</size>
+													<variant>2</variant>
+													<string>`#include <(:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-28</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string>:)>

[@namespace
boost
    {
(:include decl pre_indent="4":)
    }@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-31</id>
+														<id>-38</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -6993,7 +7028,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-32</id>
+														<id>-35</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -7004,7 +7039,7 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-33</id>
+														<id>-41</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
@@ -7019,28 +7054,6 @@
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>3</size>
-													<variant>2</variant>
-													<string>`#include <(:link </string>
-													<variant>1</variant>
-													<weak_ptr>
-														<expired>0</expired>
-														<shared_ptr>
-															<id>-38</id>
-														</shared_ptr>
-													</weak_ptr>
-													<variant>2</variant>
-													<string>:)>

[@namespace
boost
    {
(:include decl:)
    }@]
</string>
-												</container>
-											</pair>
-											<pair>
-												<weak_ptr>
-													<expired>0</expired>
-													<shared_ptr>
-														<id>-35</id>
-													</shared_ptr>
-												</weak_ptr>
-												<container>
                                                                                                         <size>0</size>
                                                                                                 </container>
                                                                                         </pair>
@@ -7048,13 +7061,11 @@
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-36</id>
+														<id>-40</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>1</size>
-													<variant>2</variant>
-													<string>[@#include <boost/shared_ptr.hpp>

namespace
boost
    {
(:include api pre_indent="4":)
    }@]
</string>
+													<size>0</size>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
@@ -7067,62 +7078,51 @@
                                                                                                 <container>
                                                                                                         <size>3</size>
                                                                                                         <variant>2</variant>
-													<string>[@#include <(:link </string>
+													<string>`#include <(:link </string>
                                                                                                         <variant>1</variant>
                                                                                                         <weak_ptr>
                                                                                                                 <expired>0</expired>
                                                                                                                 <shared_ptr>
-															<id>-13</id>
+															<id>-28</id>
                                                                                                                 </shared_ptr>
                                                                                                         </weak_ptr>
                                                                                                         <variant>2</variant>
-													<string>:)>
#include <boost/current_function.hpp>
#include <boost/shared_ptr.hpp>

namespace
boost
    {
(:include api pre_indent="4":)
    }@]
</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 api:)
</string>
-												</container>
-											</pair>
-											<pair>
-												<weak_ptr>
-													<expired>0</expired>
-													<shared_ptr>
-														<id>-39</id>
-													</shared_ptr>
-												</weak_ptr>
-												<container>
-													<size>0</size>
+													<string>:)>

[@namespace
boost
    {
(:include decl pre_indent="4":)
    }@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-40</id>
+														<id>-39</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>0</size>
+													<size>1</size>
+													<variant>2</variant>
+													<string>[@namespace
boost
    {
(:include api pre_indent="4":)
    }@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                         <pair>
                                                                                                 <weak_ptr>
                                                                                                         <expired>0</expired>
                                                                                                         <shared_ptr>
-														<id>-41</id>
+														<id>-33</id>
                                                                                                         </shared_ptr>
                                                                                                 </weak_ptr>
                                                                                                 <container>
-													<size>0</size>
+													<size>3</size>
+													<variant>2</variant>
+													<string>`#include <(:link </string>
+													<variant>1</variant>
+													<weak_ptr>
+														<expired>0</expired>
+														<shared_ptr>
+															<id>-27</id>
+														</shared_ptr>
+													</weak_ptr>
+													<variant>2</variant>
+													<string>:)>

[@namespace
boost
    {
(:include decl:)
    }@]
</string>
                                                                                                 </container>
                                                                                         </pair>
                                                                                 </sorted>
@@ -7228,31 +7228,31 @@
                                                                         <id>-32</id>
                                                                 </shared_ptr>
                                                                 <shared_ptr>
-									<id>-33</id>
+									<id>-36</id>
                                                                 </shared_ptr>
                                                                 <shared_ptr>
-									<id>-34</id>
+									<id>-38</id>
                                                                 </shared_ptr>
                                                                 <shared_ptr>
                                                                         <id>-35</id>
                                                                 </shared_ptr>
                                                                 <shared_ptr>
-									<id>-36</id>
+									<id>-41</id>
                                                                 </shared_ptr>
                                                                 <shared_ptr>
-									<id>-37</id>
+									<id>-34</id>
                                                                 </shared_ptr>
                                                                 <shared_ptr>
-									<id>-38</id>
+									<id>-40</id>
                                                                 </shared_ptr>
                                                                 <shared_ptr>
-									<id>-39</id>
+									<id>-37</id>
                                                                 </shared_ptr>
                                                                 <shared_ptr>
-									<id>-40</id>
+									<id>-39</id>
                                                                 </shared_ptr>
                                                                 <shared_ptr>
-									<id>-41</id>
+									<id>-33</id>
                                                                 </shared_ptr>
                                                         </sorted>
                                                 </contexts>
@@ -7290,7 +7290,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-33</id>
+										<id>-21</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -7307,7 +7307,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-20</id>
+										<id>-34</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -7324,7 +7324,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-39</id>
+										<id>-40</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -7348,7 +7348,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-13</id>
+										<id>-17</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -7376,7 +7376,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-10</id>
+										<id>-11</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -7408,7 +7408,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-22</id>
+										<id>-7</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -7436,7 +7436,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-40</id>
+										<id>-9</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -7464,7 +7464,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-9</id>
+										<id>-13</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -7492,31 +7492,35 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-19</id>
+										<id>-18</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
                                                                         <hook>
                                                                                 <stream_hook_path>
                                                                                         <container>
-												<size>1</size>
-												<strong>FC684D0DD5A9732B4130F2AB3DB6E0491D0F523E14B7FB738B2019EA2C7F8717</strong>
-												<weak>2229778754</weak>
-												<size>631</size>
-												<position>319</position>
+												<size>2</size>
+												<strong>17F10DBB69A481226D23CBBD7A897BF484EB8C5B1DC2E346E725EF0B8CE76D14</strong>
+												<weak>469421394</weak>
+												<size>3808</size>
+												<position>518</position>
+												<strong>D31BCE814DF5B8B718E7EB67A194AD08EF716A26D422E436596ABA1F145007D8</strong>
+												<weak>4055211476</weak>
+												<size>525</size>
+												<position>3277</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
-											<string>../../example/cloning_2.cpp</string>
+											<string>../../../../boost/exception/info.hpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-6</id>
+										<id>-30</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -7524,23 +7528,23 @@
                                                                                 <stream_hook_path>
                                                                                         <container>
                                                                                                 <size>1</size>
-												<strong>B3FB1F53BE0C995FC6388C2C4510AA859AC443E2E68F1F4E31541A8F7510861F</strong>
-												<weak>3274515267</weak>
-												<size>4141</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/info.hpp</string>
+											<string>../../example/cloning_2.cpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-37</id>
+										<id>-22</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -7564,7 +7568,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-31</id>
+										<id>-38</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -7588,7 +7592,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-23</id>
+										<id>-35</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -7616,7 +7620,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-8</id>
+										<id>-14</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -7640,7 +7644,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-11</id>
+										<id>-12</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -7648,23 +7652,23 @@
                                                                                 <stream_hook_path>
                                                                                         <container>
                                                                                                 <size>1</size>
-												<strong>7116AEECEA666794E31DC99390ADEC1BA6AF74B2398067A0739767B4B76FA97A</strong>
-												<weak>4128134227</weak>
-												<size>307</size>
-												<position>302</position>
+												<strong>A08B750D3232ABEE88525742EFF8F342E5B2E4DE52BA6F55A8CFED666A50756E</strong>
+												<weak>4268561218</weak>
+												<size>4003</size>
+												<position>323</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>
                                                                         <shared_ptr>
-										<id>-35</id>
+										<id>-15</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -7672,79 +7676,71 @@
                                                                                 <stream_hook_path>
                                                                                         <container>
                                                                                                 <size>1</size>
-												<strong>67D64FAD0AB7CA6B2173A14F363D19B27F59EEBDB5C1076F8BCCA1B54D4CCD7D</strong>
-												<weak>2241687287</weak>
-												<size>303</size>
-												<position>323</position>
+												<strong>7116AEECEA666794E31DC99390ADEC1BA6AF74B2398067A0739767B4B76FA97A</strong>
+												<weak>4128134227</weak>
+												<size>307</size>
+												<position>302</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
-											<string>../../../../boost/exception.hpp</string>
+											<string>../../example/logging.cpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-14</id>
+										<id>-16</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
                                                                         <hook>
                                                                                 <stream_hook_path>
                                                                                         <container>
-												<size>2</size>
-												<strong>80895C67727835F0DAB5F5EF65FB2FD9E64008528BD4B800119E88BFB914588F</strong>
-												<weak>2505563498</weak>
-												<size>3946</size>
-												<position>518</position>
-												<strong>7108B78DA28F7485BBB4D649BEE943AF19A3D63C80DD03F927FDA7A6D8EE2F3B</strong>
-												<weak>3042951402</weak>
-												<size>778</size>
-												<position>26</position>
+												<size>1</size>
+												<strong>F6A7A960DE8CB8740E206D2585D4C83854DE073ABDAFFB8BD1C9A6B73428197D</strong>
+												<weak>129904804</weak>
+												<size>4115</size>
+												<position>323</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
-											<string>../../../../boost/exception/info.hpp</string>
+											<string>../../../../boost/exception/get_error_info.hpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-21</id>
+										<id>-23</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
                                                                         <hook>
                                                                                 <stream_hook_path>
                                                                                         <container>
-												<size>2</size>
-												<strong>80895C67727835F0DAB5F5EF65FB2FD9E64008528BD4B800119E88BFB914588F</strong>
-												<weak>2505563498</weak>
-												<size>3946</size>
-												<position>518</position>
-												<strong>D31BCE814DF5B8B718E7EB67A194AD08EF716A26D422E436596ABA1F145007D8</strong>
-												<weak>4055211476</weak>
-												<size>525</size>
-												<position>3415</position>
+												<size>1</size>
+												<strong>67D64FAD0AB7CA6B2173A14F363D19B27F59EEBDB5C1076F8BCCA1B54D4CCD7D</strong>
+												<weak>2241687287</weak>
+												<size>303</size>
+												<position>323</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
-											<string>../../../../boost/exception/info.hpp</string>
+											<string>../../../../boost/exception.hpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-27</id>
+										<id>-26</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -7772,7 +7768,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-34</id>
+										<id>-33</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -7800,31 +7796,35 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-25</id>
+										<id>-29</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
                                                                         <hook>
                                                                                 <stream_hook_path>
                                                                                         <container>
-												<size>1</size>
-												<strong>004B7821B451CA1B70A9BE6231A5359BE7A5E991793A4B4DB1DB0008905DF6B6</strong>
-												<weak>2648584333</weak>
-												<size>4115</size>
-												<position>323</position>
+												<size>2</size>
+												<strong>126BB1D8971585CBE7D78EF3C12259D72FD5E973A84626AA9FC3234220A11CAB</strong>
+												<weak>3471702891</weak>
+												<size>969</size>
+												<position>344</position>
+												<strong>A7FD310E1340E103081DA2A7899DA0E213C696C84D52C17ADA09F6942EE97D47</strong>
+												<weak>2978648279</weak>
+												<size>530</size>
+												<position>433</position>
                                                                                         </container>
                                                                                 </stream_hook_path>
                                                                         </hook>
                                                                         <file>
                                                                                 <path>
                                                                                         <empty>0</empty>
-											<string>../../../../boost/exception/get_error_info.hpp</string>
+											<string>../../../../boost/exception/detail/error_info_impl.hpp</string>
                                                                                         <type>0</type>
                                                                                         <base>0</base>
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-36</id>
+										<id>-31</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -7848,7 +7848,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-29</id>
+										<id>-8</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -7872,7 +7872,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-30</id>
+										<id>-25</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -7896,7 +7896,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-26</id>
+										<id>-28</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -7920,7 +7920,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-24</id>
+										<id>-41</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -7948,7 +7948,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-18</id>
+										<id>-20</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -7976,7 +7976,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-17</id>
+										<id>-24</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -8004,7 +8004,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-16</id>
+										<id>-37</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -8032,7 +8032,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-12</id>
+										<id>-36</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -8060,7 +8060,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-7</id>
+										<id>-10</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -8084,7 +8084,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-38</id>
+										<id>-27</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -8112,7 +8112,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-5</id>
+										<id>-39</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -8140,7 +8140,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-15</id>
+										<id>-5</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -8164,7 +8164,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-28</id>
+										<id>-6</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                                 <pair>
@@ -8188,7 +8188,7 @@
                                                                                 </path>
                                                                         </file>
                                                                         <shared_ptr>
-										<id>-41</id>
+										<id>-19</id>
                                                                         </shared_ptr>
                                                                 </pair>
                                                         </sorted>
@@ -8219,7 +8219,7 @@
                                                                                         <id>-5</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string></string>
+									<string>error_info free function</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -8237,7 +8237,7 @@
                                                                                         <id>-7</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string>exception_ptr free function</string>
+									<string>function</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -8246,7 +8246,7 @@
                                                                                         <id>-8</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string>diagnostic_information free function</string>
+									<string></string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -8255,7 +8255,7 @@
                                                                                         <id>-9</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string>exception_ptr free function</string>
+									<string>function</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -8264,7 +8264,7 @@
                                                                                         <id>-10</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string>type</string>
+									<string>exception_ptr free function</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -8273,7 +8273,7 @@
                                                                                         <id>-11</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string></string>
+									<string>type</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -8282,7 +8282,7 @@
                                                                                         <id>-12</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string>exception_ptr free function</string>
+									<string></string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -8291,7 +8291,7 @@
                                                                                         <id>-13</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string></string>
+									<string>exception_ptr free function</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -8300,7 +8300,7 @@
                                                                                         <id>-14</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string></string>
+									<string>diagnostic_information free function</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -8309,7 +8309,7 @@
                                                                                         <id>-15</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string>error_info free function</string>
+									<string></string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -8318,7 +8318,7 @@
                                                                                         <id>-16</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string>exception_ptr type</string>
+									<string>diagnostic_information tutorial</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -8327,7 +8327,7 @@
                                                                                         <id>-17</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string>type</string>
+									<string></string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -8336,7 +8336,7 @@
                                                                                         <id>-18</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string>exception_ptr free function</string>
+									<string>error_info free function</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -8345,7 +8345,7 @@
                                                                                         <id>-19</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string>error_info free function</string>
+									<string>noalso noindex tutorial</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -8354,7 +8354,7 @@
                                                                                         <id>-20</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string>tutorial</string>
+									<string>exception_ptr free function</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -8363,7 +8363,7 @@
                                                                                         <id>-21</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string>type</string>
+									<string>tutorial</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -8372,7 +8372,7 @@
                                                                                         <id>-22</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string>function</string>
+									<string>noalso noindex tutorial</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -8381,7 +8381,7 @@
                                                                                         <id>-23</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string>tutorial</string>
+									<string>error_info</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -8390,7 +8390,7 @@
                                                                                         <id>-24</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string>noalso noindex tutorial</string>
+									<string>type</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -8399,7 +8399,7 @@
                                                                                         <id>-25</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string>error_info free function</string>
+									<string>noalso noindex tutorial</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -8417,7 +8417,7 @@
                                                                                         <id>-27</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string>error_info free function</string>
+									<string></string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -8426,7 +8426,7 @@
                                                                                         <id>-28</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string>noalso noindex tutorial</string>
+									<string></string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -8435,7 +8435,7 @@
                                                                                         <id>-29</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string></string>
+									<string>error_info free function</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -8444,7 +8444,7 @@
                                                                                         <id>-30</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string>noalso noindex tutorial</string>
+									<string>error_info free function</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -8453,7 +8453,7 @@
                                                                                         <id>-31</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string></string>
+									<string>type</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -8468,19 +8468,19 @@
                                                                         <weak_ptr>
                                                                                 <expired>0</expired>
                                                                                 <shared_ptr>
-											<id>-33</id>
+											<id>-36</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string>tutorial</string>
+									<string>exception_ptr free function</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
                                                                                 <expired>0</expired>
                                                                                 <shared_ptr>
-											<id>-34</id>
+											<id>-38</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string>free function</string>
+									<string></string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
@@ -8489,61 +8489,61 @@
                                                                                         <id>-35</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string>diagnostic_information tutorial</string>
+									<string>tutorial</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
                                                                                 <expired>0</expired>
                                                                                 <shared_ptr>
-											<id>-36</id>
+											<id>-41</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string>error_info</string>
+									<string>noalso noindex tutorial</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
                                                                                 <expired>0</expired>
                                                                                 <shared_ptr>
-											<id>-37</id>
+											<id>-34</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string></string>
+									<string>tutorial</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
                                                                                 <expired>0</expired>
                                                                                 <shared_ptr>
-											<id>-38</id>
+											<id>-40</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string></string>
+									<string>index noindex</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
                                                                                 <expired>0</expired>
                                                                                 <shared_ptr>
-											<id>-39</id>
+											<id>-37</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string>index noindex</string>
+									<string>exception_ptr type</string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
                                                                                 <expired>0</expired>
                                                                                 <shared_ptr>
-											<id>-40</id>
+											<id>-39</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string>function</string>
+									<string></string>
                                                                 </pair>
                                                                 <pair>
                                                                         <weak_ptr>
                                                                                 <expired>0</expired>
                                                                                 <shared_ptr>
-											<id>-41</id>
+											<id>-33</id>
                                                                                 </shared_ptr>
                                                                         </weak_ptr>
-									<string>noalso noindex tutorial</string>
+									<string>free function</string>
                                                                 </pair>
                                                         </sorted>
                                                 </tag_index>