summaryrefslogtreecommitdiff
path: root/libs/type_traits
diff options
context:
space:
mode:
authorDongHun Kwak <dh0128.kwak@samsung.com>2017-09-13 11:08:07 +0900
committerDongHun Kwak <dh0128.kwak@samsung.com>2017-09-13 11:09:00 +0900
commitb5c87084afaef42b2d058f68091be31988a6a874 (patch)
treeadef9a65870a41181687e11d57fdf98e7629de3c /libs/type_traits
parent34bd32e225e2a8a94104489b31c42e5801cc1f4a (diff)
downloadboost-b5c87084afaef42b2d058f68091be31988a6a874.tar.gz
boost-b5c87084afaef42b2d058f68091be31988a6a874.tar.bz2
boost-b5c87084afaef42b2d058f68091be31988a6a874.zip
Imported Upstream version 1.64.0upstream/1.64.0
Change-Id: Id9212edd016dd55f21172c427aa7894d1d24148b Signed-off-by: DongHun Kwak <dh0128.kwak@samsung.com>
Diffstat (limited to 'libs/type_traits')
-rw-r--r--libs/type_traits/doc/history.qbk6
-rw-r--r--libs/type_traits/doc/html/boost_typetraits/history.html30
-rw-r--r--libs/type_traits/doc/html/boost_typetraits/reference.html1
-rw-r--r--libs/type_traits/doc/html/boost_typetraits/reference/make_unsigned.html6
-rw-r--r--libs/type_traits/doc/html/boost_typetraits/reference/make_void.html179
-rw-r--r--libs/type_traits/doc/html/boost_typetraits/reference/promote.html8
-rw-r--r--libs/type_traits/doc/html/boost_typetraits/reference/remove_all_extents.html2
-rw-r--r--libs/type_traits/doc/html/boost_typetraits/reference/remove_const.html2
-rw-r--r--libs/type_traits/doc/html/boost_typetraits/reference/remove_cv.html2
-rw-r--r--libs/type_traits/doc/html/boost_typetraits/reference/remove_extent.html2
-rw-r--r--libs/type_traits/doc/html/boost_typetraits/reference/remove_pointer.html2
-rw-r--r--libs/type_traits/doc/html/boost_typetraits/reference/remove_reference.html2
-rw-r--r--libs/type_traits/doc/html/boost_typetraits/reference/remove_volatile.html2
-rw-r--r--libs/type_traits/doc/html/boost_typetraits/reference/type_identity.html2
-rw-r--r--libs/type_traits/doc/html/index.html1
-rw-r--r--libs/type_traits/doc/html/index/s11.html3
-rw-r--r--libs/type_traits/doc/html/index/s12.html2
-rw-r--r--libs/type_traits/doc/html/index/s13.html2
-rw-r--r--libs/type_traits/doc/html/index/s14.html3
-rw-r--r--libs/type_traits/doc/html/standalone_HTML.manifest1
-rw-r--r--libs/type_traits/doc/make_void.qbk48
-rw-r--r--libs/type_traits/doc/type_traits.qbk2
-rw-r--r--libs/type_traits/test/common_type_2_test.cpp10
-rw-r--r--libs/type_traits/test/common_type_test.cpp10
-rw-r--r--libs/type_traits/test/is_convertible_test.cpp4
-rw-r--r--libs/type_traits/test/make_void_test.cpp45
-rw-r--r--libs/type_traits/test/mpl_interop_test1.cpp2
-rw-r--r--libs/type_traits/test/mpl_interop_test2.cpp2
-rw-r--r--libs/type_traits/test/mpl_interop_test3.cpp2
29 files changed, 337 insertions, 46 deletions
diff --git a/libs/type_traits/doc/history.qbk b/libs/type_traits/doc/history.qbk
index 45abeef476..ed49f57fa3 100644
--- a/libs/type_traits/doc/history.qbk
+++ b/libs/type_traits/doc/history.qbk
@@ -7,7 +7,11 @@
[section:history History]
-[h4 Boost 1.60.0 ???]
+[h4 Boost 1.64.0]
+
+* Added new trait __make_void.
+
+[h4 Boost 1.60.0]
* Refactored traits to depend only on Boost.Config. Greatly simplified code to improve readability and remove workarounds for old compilers no longer supported.
* Fix __decay to follow C++11 semantics, see [@https://svn.boost.org/trac/boost/ticket/7760 #7760].
diff --git a/libs/type_traits/doc/html/boost_typetraits/history.html b/libs/type_traits/doc/html/boost_typetraits/history.html
index 966697528b..3dcf2fb204 100644
--- a/libs/type_traits/doc/html/boost_typetraits/history.html
+++ b/libs/type_traits/doc/html/boost_typetraits/history.html
@@ -28,8 +28,16 @@
</h2></div></div></div>
<h5>
<a name="boost_typetraits.history.h0"></a>
- <span class="phrase"><a name="boost_typetraits.history.boost_1_60_0____"></a></span><a class="link" href="history.html#boost_typetraits.history.boost_1_60_0____">Boost
- 1.60.0 ???</a>
+ <span class="phrase"><a name="boost_typetraits.history.boost_1_64_0"></a></span><a class="link" href="history.html#boost_typetraits.history.boost_1_64_0">Boost
+ 1.64.0</a>
+ </h5>
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+ Added new trait <a class="link" href="reference/make_void.html" title="make_void">make_void</a>.
+ </li></ul></div>
+<h5>
+<a name="boost_typetraits.history.h1"></a>
+ <span class="phrase"><a name="boost_typetraits.history.boost_1_60_0"></a></span><a class="link" href="history.html#boost_typetraits.history.boost_1_60_0">Boost
+ 1.60.0</a>
</h5>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
@@ -50,7 +58,7 @@
</li>
</ul></div>
<h5>
-<a name="boost_typetraits.history.h1"></a>
+<a name="boost_typetraits.history.h2"></a>
<span class="phrase"><a name="boost_typetraits.history.boost_1_58_0"></a></span><a class="link" href="history.html#boost_typetraits.history.boost_1_58_0">Boost
1.58.0</a>
</h5>
@@ -65,7 +73,7 @@
</li>
</ul></div>
<h5>
-<a name="boost_typetraits.history.h2"></a>
+<a name="boost_typetraits.history.h3"></a>
<span class="phrase"><a name="boost_typetraits.history.boost_1_57_0"></a></span><a class="link" href="history.html#boost_typetraits.history.boost_1_57_0">Boost
1.57.0</a>
</h5>
@@ -79,7 +87,7 @@
</li>
</ul></div>
<h5>
-<a name="boost_typetraits.history.h3"></a>
+<a name="boost_typetraits.history.h4"></a>
<span class="phrase"><a name="boost_typetraits.history.boost_1_56_0"></a></span><a class="link" href="history.html#boost_typetraits.history.boost_1_56_0">Boost
1.56.0</a>
</h5>
@@ -88,7 +96,7 @@
<a href="https://svn.boost.org/trac/boost/ticket/9474" target="_top">#9474</a>.
</li></ul></div>
<h5>
-<a name="boost_typetraits.history.h4"></a>
+<a name="boost_typetraits.history.h5"></a>
<span class="phrase"><a name="boost_typetraits.history.boost_1_55_0"></a></span><a class="link" href="history.html#boost_typetraits.history.boost_1_55_0">Boost
1.55.0</a>
</h5>
@@ -96,7 +104,7 @@
Added new trait <a class="link" href="reference/is_copy_constructible.html" title="is_copy_constructible">is_copy_constructible</a>.
</li></ul></div>
<h5>
-<a name="boost_typetraits.history.h5"></a>
+<a name="boost_typetraits.history.h6"></a>
<span class="phrase"><a name="boost_typetraits.history.boost_1_54_0"></a></span><a class="link" href="history.html#boost_typetraits.history.boost_1_54_0">Boost
1.54.0</a>
</h5>
@@ -107,7 +115,7 @@
<a class="link" href="reference/has_trivial_move_constructor.html" title="has_trivial_move_constructor">has_trivial_move_constructor</a>.
</li></ul></div>
<h5>
-<a name="boost_typetraits.history.h6"></a>
+<a name="boost_typetraits.history.h7"></a>
<span class="phrase"><a name="boost_typetraits.history.boost_1_47_0"></a></span><a class="link" href="history.html#boost_typetraits.history.boost_1_47_0">Boost
1.47.0</a>
</h5>
@@ -122,7 +130,7 @@
</li>
</ul></div>
<h5>
-<a name="boost_typetraits.history.h7"></a>
+<a name="boost_typetraits.history.h8"></a>
<span class="phrase"><a name="boost_typetraits.history.boost_1_45_0"></a></span><a class="link" href="history.html#boost_typetraits.history.boost_1_45_0">Boost
1.45.0</a>
</h5>
@@ -139,7 +147,7 @@
</li>
</ul></div>
<h5>
-<a name="boost_typetraits.history.h8"></a>
+<a name="boost_typetraits.history.h9"></a>
<span class="phrase"><a name="boost_typetraits.history.boost_1_44_0"></a></span><a class="link" href="history.html#boost_typetraits.history.boost_1_44_0">Boost
1.44.0</a>
</h5>
@@ -156,7 +164,7 @@
</li>
</ul></div>
<h5>
-<a name="boost_typetraits.history.h9"></a>
+<a name="boost_typetraits.history.h10"></a>
<span class="phrase"><a name="boost_typetraits.history.boost_1_42_0"></a></span><a class="link" href="history.html#boost_typetraits.history.boost_1_42_0">Boost
1.42.0</a>
</h5>
diff --git a/libs/type_traits/doc/html/boost_typetraits/reference.html b/libs/type_traits/doc/html/boost_typetraits/reference.html
index bd14b22537..86a32f10a0 100644
--- a/libs/type_traits/doc/html/boost_typetraits/reference.html
+++ b/libs/type_traits/doc/html/boost_typetraits/reference.html
@@ -145,6 +145,7 @@
<dt><span class="section"><a href="reference/is_volatile.html">is_volatile</a></span></dt>
<dt><span class="section"><a href="reference/make_signed.html">make_signed</a></span></dt>
<dt><span class="section"><a href="reference/make_unsigned.html">make_unsigned</a></span></dt>
+<dt><span class="section"><a href="reference/make_void.html">make_void</a></span></dt>
<dt><span class="section"><a href="reference/promote.html">promote</a></span></dt>
<dt><span class="section"><a href="reference/rank.html">rank</a></span></dt>
<dt><span class="section"><a href="reference/remove_all_extents.html">remove_all_extents</a></span></dt>
diff --git a/libs/type_traits/doc/html/boost_typetraits/reference/make_unsigned.html b/libs/type_traits/doc/html/boost_typetraits/reference/make_unsigned.html
index 5f72aa233a..42f8b818dc 100644
--- a/libs/type_traits/doc/html/boost_typetraits/reference/make_unsigned.html
+++ b/libs/type_traits/doc/html/boost_typetraits/reference/make_unsigned.html
@@ -7,7 +7,7 @@
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Boost.TypeTraits">
<link rel="up" href="../reference.html" title="Alphabetical Reference">
<link rel="prev" href="make_signed.html" title="make_signed">
-<link rel="next" href="promote.html" title="promote">
+<link rel="next" href="make_void.html" title="make_void">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
@@ -20,7 +20,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
-<a accesskey="p" href="make_signed.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="promote.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
+<a accesskey="p" href="make_signed.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="make_void.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
@@ -160,7 +160,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
-<a accesskey="p" href="make_signed.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="promote.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
+<a accesskey="p" href="make_signed.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="make_void.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>
diff --git a/libs/type_traits/doc/html/boost_typetraits/reference/make_void.html b/libs/type_traits/doc/html/boost_typetraits/reference/make_void.html
new file mode 100644
index 0000000000..c5ca4f2e94
--- /dev/null
+++ b/libs/type_traits/doc/html/boost_typetraits/reference/make_void.html
@@ -0,0 +1,179 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
+<title>make_void</title>
+<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
+<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Boost.TypeTraits">
+<link rel="up" href="../reference.html" title="Alphabetical Reference">
+<link rel="prev" href="make_unsigned.html" title="make_unsigned">
+<link rel="next" href="promote.html" title="promote">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center"><a href="../../../../../../index.html">Home</a></td>
+<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
+<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
+<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
+<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="make_unsigned.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="promote.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
+</div>
+<div class="section">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="boost_typetraits.reference.make_void"></a><a class="link" href="make_void.html" title="make_void">make_void</a>
+</h3></div></div></div>
+<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span><span class="special">...&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">make_void</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="keyword">void</span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span><span class="special">...</span> <span class="identifier">Ts</span><span class="special">&gt;</span>
+<span class="keyword">using</span> <span class="identifier">void_t</span> <span class="special">=</span> <span class="keyword">typename</span> <span class="identifier">make_void</span><span class="special">&lt;</span><span class="identifier">Ts</span><span class="special">...&gt;::</span><span class="identifier">type</span><span class="special">;</span>
+</pre>
+<p>
+ <span class="bold"><strong>type:</strong></span> The type <code class="computeroutput"><span class="keyword">void</span></code>
+ for all <code class="computeroutput"><span class="identifier">T</span></code>.
+ </p>
+<p>
+ <span class="bold"><strong>Header:</strong></span> <code class="computeroutput"> <span class="preprocessor">#include</span>
+ <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">/</span><span class="identifier">make_void</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
+ or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
+ </p>
+<div class="table">
+<a name="boost_typetraits.reference.make_void.examples"></a><p class="title"><b>Table&#160;1.25.&#160;Examples</b></p>
+<div class="table-contents"><table class="table" summary="Examples">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Result Type
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">make_void</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ <code class="computeroutput"><span class="keyword">void</span></code>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">make_void</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&amp;&gt;::</span><span class="identifier">type</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ <code class="computeroutput"><span class="keyword">void</span></code>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">make_void</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">(*)(</span><span class="keyword">int</span><span class="special">)&gt;::</span><span class="identifier">type</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ <code class="computeroutput"><span class="keyword">void</span></code>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">make_void</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">[]&gt;::</span><span class="identifier">type</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ <code class="computeroutput"><span class="keyword">void</span></code>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">make_void</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">[</span><span class="number">1</span><span class="special">]&gt;::</span><span class="identifier">type</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ <code class="computeroutput"><span class="keyword">void</span></code>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">make_void</span><span class="special">&lt;&gt;::</span><span class="identifier">type</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ <code class="computeroutput"><span class="keyword">void</span></code>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">make_void</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ <code class="computeroutput"><span class="keyword">void</span></code>
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<br class="table-break"><p>
+ <span class="bold"><strong>Compiler Compatibility:</strong></span> All current compilers
+ are supported by this trait. However, the type alias <code class="computeroutput"><span class="identifier">void_t</span></code>
+ is only available if the compiler supports template aliases. Further, in
+ the absence of variadic-template support, <code class="computeroutput"><span class="identifier">make_void</span></code>
+ only supports up to 5 parameters.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><div class="copyright-footer">Copyright &#169; 2000, 2011 Adobe Systems Inc, David Abrahams,
+ Frederic Bron, Steve Cleary, Beman Dawes, Aleksey Gurtovoy, Howard Hinnant,
+ Jesse Jones, Mat Marcus, Itay Maman, John Maddock, Alexander Nasonov, Thorsten
+ Ottosen, Roman Perepelitsa, Robert Ramey, Jeremy Siek, Robert Stewart and Steven
+ Watanabe<p>
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="make_unsigned.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="promote.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>
diff --git a/libs/type_traits/doc/html/boost_typetraits/reference/promote.html b/libs/type_traits/doc/html/boost_typetraits/reference/promote.html
index be0df6325d..9b1faada22 100644
--- a/libs/type_traits/doc/html/boost_typetraits/reference/promote.html
+++ b/libs/type_traits/doc/html/boost_typetraits/reference/promote.html
@@ -6,7 +6,7 @@
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../index.html" title="Chapter&#160;1.&#160;Boost.TypeTraits">
<link rel="up" href="../reference.html" title="Alphabetical Reference">
-<link rel="prev" href="make_unsigned.html" title="make_unsigned">
+<link rel="prev" href="make_void.html" title="make_void">
<link rel="next" href="rank.html" title="rank">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -20,7 +20,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
-<a accesskey="p" href="make_unsigned.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="rank.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
+<a accesskey="p" href="make_void.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="rank.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
@@ -55,7 +55,7 @@
or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
<div class="table">
-<a name="boost_typetraits.reference.promote.examples"></a><p class="title"><b>Table&#160;1.25.&#160;Examples</b></p>
+<a name="boost_typetraits.reference.promote.examples"></a><p class="title"><b>Table&#160;1.26.&#160;Examples</b></p>
<div class="table-contents"><table class="table" summary="Examples">
<colgroup>
<col>
@@ -129,7 +129,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
-<a accesskey="p" href="make_unsigned.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="rank.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
+<a accesskey="p" href="make_void.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="rank.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>
diff --git a/libs/type_traits/doc/html/boost_typetraits/reference/remove_all_extents.html b/libs/type_traits/doc/html/boost_typetraits/reference/remove_all_extents.html
index 9f1d999b82..b3723552a2 100644
--- a/libs/type_traits/doc/html/boost_typetraits/reference/remove_all_extents.html
+++ b/libs/type_traits/doc/html/boost_typetraits/reference/remove_all_extents.html
@@ -50,7 +50,7 @@
or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
<div class="table">
-<a name="boost_typetraits.reference.remove_all_extents.examples"></a><p class="title"><b>Table&#160;1.26.&#160;Examples</b></p>
+<a name="boost_typetraits.reference.remove_all_extents.examples"></a><p class="title"><b>Table&#160;1.27.&#160;Examples</b></p>
<div class="table-contents"><table class="table" summary="Examples">
<colgroup>
<col>
diff --git a/libs/type_traits/doc/html/boost_typetraits/reference/remove_const.html b/libs/type_traits/doc/html/boost_typetraits/reference/remove_const.html
index 31bd8df5cf..706e40fcdb 100644
--- a/libs/type_traits/doc/html/boost_typetraits/reference/remove_const.html
+++ b/libs/type_traits/doc/html/boost_typetraits/reference/remove_const.html
@@ -49,7 +49,7 @@
or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
<div class="table">
-<a name="boost_typetraits.reference.remove_const.examples"></a><p class="title"><b>Table&#160;1.27.&#160;Examples</b></p>
+<a name="boost_typetraits.reference.remove_const.examples"></a><p class="title"><b>Table&#160;1.28.&#160;Examples</b></p>
<div class="table-contents"><table class="table" summary="Examples">
<colgroup>
<col>
diff --git a/libs/type_traits/doc/html/boost_typetraits/reference/remove_cv.html b/libs/type_traits/doc/html/boost_typetraits/reference/remove_cv.html
index ee2ddf6d16..262437df5f 100644
--- a/libs/type_traits/doc/html/boost_typetraits/reference/remove_cv.html
+++ b/libs/type_traits/doc/html/boost_typetraits/reference/remove_cv.html
@@ -49,7 +49,7 @@
or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
<div class="table">
-<a name="boost_typetraits.reference.remove_cv.examples"></a><p class="title"><b>Table&#160;1.28.&#160;Examples</b></p>
+<a name="boost_typetraits.reference.remove_cv.examples"></a><p class="title"><b>Table&#160;1.29.&#160;Examples</b></p>
<div class="table-contents"><table class="table" summary="Examples">
<colgroup>
<col>
diff --git a/libs/type_traits/doc/html/boost_typetraits/reference/remove_extent.html b/libs/type_traits/doc/html/boost_typetraits/reference/remove_extent.html
index c9918a31a7..09b50dd104 100644
--- a/libs/type_traits/doc/html/boost_typetraits/reference/remove_extent.html
+++ b/libs/type_traits/doc/html/boost_typetraits/reference/remove_extent.html
@@ -50,7 +50,7 @@
or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
<div class="table">
-<a name="boost_typetraits.reference.remove_extent.examples"></a><p class="title"><b>Table&#160;1.29.&#160;Examples</b></p>
+<a name="boost_typetraits.reference.remove_extent.examples"></a><p class="title"><b>Table&#160;1.30.&#160;Examples</b></p>
<div class="table-contents"><table class="table" summary="Examples">
<colgroup>
<col>
diff --git a/libs/type_traits/doc/html/boost_typetraits/reference/remove_pointer.html b/libs/type_traits/doc/html/boost_typetraits/reference/remove_pointer.html
index fdcd481003..f7be89b289 100644
--- a/libs/type_traits/doc/html/boost_typetraits/reference/remove_pointer.html
+++ b/libs/type_traits/doc/html/boost_typetraits/reference/remove_pointer.html
@@ -51,7 +51,7 @@
or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
<div class="table">
-<a name="boost_typetraits.reference.remove_pointer.examples"></a><p class="title"><b>Table&#160;1.30.&#160;Examples</b></p>
+<a name="boost_typetraits.reference.remove_pointer.examples"></a><p class="title"><b>Table&#160;1.31.&#160;Examples</b></p>
<div class="table-contents"><table class="table" summary="Examples">
<colgroup>
<col>
diff --git a/libs/type_traits/doc/html/boost_typetraits/reference/remove_reference.html b/libs/type_traits/doc/html/boost_typetraits/reference/remove_reference.html
index 7f320c9413..535a5e2dfa 100644
--- a/libs/type_traits/doc/html/boost_typetraits/reference/remove_reference.html
+++ b/libs/type_traits/doc/html/boost_typetraits/reference/remove_reference.html
@@ -49,7 +49,7 @@
or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
<div class="table">
-<a name="boost_typetraits.reference.remove_reference.examples"></a><p class="title"><b>Table&#160;1.31.&#160;Examples</b></p>
+<a name="boost_typetraits.reference.remove_reference.examples"></a><p class="title"><b>Table&#160;1.32.&#160;Examples</b></p>
<div class="table-contents"><table class="table" summary="Examples">
<colgroup>
<col>
diff --git a/libs/type_traits/doc/html/boost_typetraits/reference/remove_volatile.html b/libs/type_traits/doc/html/boost_typetraits/reference/remove_volatile.html
index d3c1b9c378..4a940a4579 100644
--- a/libs/type_traits/doc/html/boost_typetraits/reference/remove_volatile.html
+++ b/libs/type_traits/doc/html/boost_typetraits/reference/remove_volatile.html
@@ -49,7 +49,7 @@
or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
<div class="table">
-<a name="boost_typetraits.reference.remove_volatile.examples"></a><p class="title"><b>Table&#160;1.32.&#160;Examples</b></p>
+<a name="boost_typetraits.reference.remove_volatile.examples"></a><p class="title"><b>Table&#160;1.33.&#160;Examples</b></p>
<div class="table-contents"><table class="table" summary="Examples">
<colgroup>
<col>
diff --git a/libs/type_traits/doc/html/boost_typetraits/reference/type_identity.html b/libs/type_traits/doc/html/boost_typetraits/reference/type_identity.html
index b549a7e36b..090bf823ef 100644
--- a/libs/type_traits/doc/html/boost_typetraits/reference/type_identity.html
+++ b/libs/type_traits/doc/html/boost_typetraits/reference/type_identity.html
@@ -38,7 +38,7 @@
or <code class="computeroutput"> <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
</p>
<div class="table">
-<a name="boost_typetraits.reference.type_identity.examples"></a><p class="title"><b>Table&#160;1.33.&#160;Examples</b></p>
+<a name="boost_typetraits.reference.type_identity.examples"></a><p class="title"><b>Table&#160;1.34.&#160;Examples</b></p>
<div class="table-contents"><table class="table" summary="Examples">
<colgroup>
<col>
diff --git a/libs/type_traits/doc/html/index.html b/libs/type_traits/doc/html/index.html
index d4b268183c..4929fad62c 100644
--- a/libs/type_traits/doc/html/index.html
+++ b/libs/type_traits/doc/html/index.html
@@ -201,6 +201,7 @@
<dt><span class="section"><a href="boost_typetraits/reference/is_volatile.html">is_volatile</a></span></dt>
<dt><span class="section"><a href="boost_typetraits/reference/make_signed.html">make_signed</a></span></dt>
<dt><span class="section"><a href="boost_typetraits/reference/make_unsigned.html">make_unsigned</a></span></dt>
+<dt><span class="section"><a href="boost_typetraits/reference/make_void.html">make_void</a></span></dt>
<dt><span class="section"><a href="boost_typetraits/reference/promote.html">promote</a></span></dt>
<dt><span class="section"><a href="boost_typetraits/reference/rank.html">rank</a></span></dt>
<dt><span class="section"><a href="boost_typetraits/reference/remove_all_extents.html">remove_all_extents</a></span></dt>
diff --git a/libs/type_traits/doc/html/index/s11.html b/libs/type_traits/doc/html/index/s11.html
index 8dcc99a764..0bbbcd8241 100644
--- a/libs/type_traits/doc/html/index/s11.html
+++ b/libs/type_traits/doc/html/index/s11.html
@@ -24,7 +24,7 @@
</div>
<div class="section">
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="idp100113776"></a>Class Index</h2></div></div></div>
+<a name="idp113212912"></a>Class Index</h2></div></div></div>
<p><a class="link" href="s11.html#idx_id_0">A</a> <a class="link" href="s11.html#idx_id_2">C</a> <a class="link" href="s11.html#idx_id_3">D</a> <a class="link" href="s11.html#idx_id_4">E</a> <a class="link" href="s11.html#idx_id_5">F</a> <a class="link" href="s11.html#idx_id_6">H</a> <a class="link" href="s11.html#idx_id_7">I</a> <a class="link" href="s11.html#idx_id_8">M</a> <a class="link" href="s11.html#idx_id_9">N</a> <a class="link" href="s11.html#idx_id_10">O</a> <a class="link" href="s11.html#idx_id_11">P</a> <a class="link" href="s11.html#idx_id_12">R</a> <a class="link" href="s11.html#idx_id_13">T</a></p>
<div class="variablelist"><dl class="variablelist">
<dt>
@@ -292,6 +292,7 @@
<dd><div class="index"><ul class="index" style="list-style-type: none; ">
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/make_signed.html" title="make_signed"><span class="index-entry-level-0">make_signed</span></a></p></li>
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/make_unsigned.html" title="make_unsigned"><span class="index-entry-level-0">make_unsigned</span></a></p></li>
+<li class="listitem" style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/make_void.html" title="make_void"><span class="index-entry-level-0">make_void</span></a></p></li>
</ul></div></dd>
<dt>
<a name="idx_id_9"></a><span class="term">N</span>
diff --git a/libs/type_traits/doc/html/index/s12.html b/libs/type_traits/doc/html/index/s12.html
index 6a0505182d..8f19af4011 100644
--- a/libs/type_traits/doc/html/index/s12.html
+++ b/libs/type_traits/doc/html/index/s12.html
@@ -24,7 +24,7 @@
</div>
<div class="section">
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="idp100503056"></a>Typedef Index</h2></div></div></div>
+<a name="idp113603184"></a>Typedef Index</h2></div></div></div>
<p><a class="link" href="s12.html#idx_id_21">F</a> <a class="link" href="s12.html#idx_id_28">R</a> <a class="link" href="s12.html#idx_id_29">T</a> <a class="link" href="s12.html#idx_id_31">V</a></p>
<div class="variablelist"><dl class="variablelist">
<dt>
diff --git a/libs/type_traits/doc/html/index/s13.html b/libs/type_traits/doc/html/index/s13.html
index c51e19d636..9e701e1264 100644
--- a/libs/type_traits/doc/html/index/s13.html
+++ b/libs/type_traits/doc/html/index/s13.html
@@ -24,7 +24,7 @@
</div>
<div class="section">
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="idp100538176"></a>Macro Index</h2></div></div></div>
+<a name="idp113638384"></a>Macro Index</h2></div></div></div>
<p><a class="link" href="s13.html#idx_id_33">B</a></p>
<div class="variablelist"><dl class="variablelist">
<dt>
diff --git a/libs/type_traits/doc/html/index/s14.html b/libs/type_traits/doc/html/index/s14.html
index 03e8f20b14..ecc9eba1e8 100644
--- a/libs/type_traits/doc/html/index/s14.html
+++ b/libs/type_traits/doc/html/index/s14.html
@@ -23,7 +23,7 @@
</div>
<div class="section">
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="idp100638048"></a>Index</h2></div></div></div>
+<a name="idp113738304"></a>Index</h2></div></div></div>
<p><a class="link" href="s14.html#idx_id_48">A</a> <a class="link" href="s14.html#idx_id_49">B</a> <a class="link" href="s14.html#idx_id_50">C</a> <a class="link" href="s14.html#idx_id_51">D</a> <a class="link" href="s14.html#idx_id_52">E</a> <a class="link" href="s14.html#idx_id_53">F</a> <a class="link" href="s14.html#idx_id_54">H</a> <a class="link" href="s14.html#idx_id_55">I</a> <a class="link" href="s14.html#idx_id_56">M</a> <a class="link" href="s14.html#idx_id_57">N</a> <a class="link" href="s14.html#idx_id_58">O</a> <a class="link" href="s14.html#idx_id_59">P</a> <a class="link" href="s14.html#idx_id_60">R</a> <a class="link" href="s14.html#idx_id_61">T</a> <a class="link" href="s14.html#idx_id_62">U</a> <a class="link" href="s14.html#idx_id_63">V</a></p>
<div class="variablelist"><dl class="variablelist">
<dt>
@@ -839,6 +839,7 @@
</li>
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/make_signed.html" title="make_signed"><span class="index-entry-level-0">make_signed</span></a></p></li>
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/make_unsigned.html" title="make_unsigned"><span class="index-entry-level-0">make_unsigned</span></a></p></li>
+<li class="listitem" style="list-style-type: none"><p><a class="link" href="../boost_typetraits/reference/make_void.html" title="make_void"><span class="index-entry-level-0">make_void</span></a></p></li>
</ul></div></dd>
<dt>
<a name="idx_id_57"></a><span class="term">N</span>
diff --git a/libs/type_traits/doc/html/standalone_HTML.manifest b/libs/type_traits/doc/html/standalone_HTML.manifest
index 129989d87c..832e4a7bd5 100644
--- a/libs/type_traits/doc/html/standalone_HTML.manifest
+++ b/libs/type_traits/doc/html/standalone_HTML.manifest
@@ -139,6 +139,7 @@ boost_typetraits/reference/is_void.html
boost_typetraits/reference/is_volatile.html
boost_typetraits/reference/make_signed.html
boost_typetraits/reference/make_unsigned.html
+boost_typetraits/reference/make_void.html
boost_typetraits/reference/promote.html
boost_typetraits/reference/rank.html
boost_typetraits/reference/remove_all_extents.html
diff --git a/libs/type_traits/doc/make_void.qbk b/libs/type_traits/doc/make_void.qbk
new file mode 100644
index 0000000000..3ae0e3dc4a
--- /dev/null
+++ b/libs/type_traits/doc/make_void.qbk
@@ -0,0 +1,48 @@
+[/
+Copyright 2017 Glen Joseph Fernandes
+<glenjofe -at- gmail.com>
+
+Distributed under the Boost Software License,
+Version 1.0. (See accompanying file LICENSE_1_0.txt
+or copy at http://www.boost.org/LICENSE_1_0.txt).
+]
+
+[section:make_void make_void]
+
+ template<class...>
+ struct make_void
+ {
+ typedef void type;
+ };
+
+ template<class... Ts>
+ using void_t = typename make_void<Ts...>::type;
+
+__type The type `void` for all `T`.
+
+__header ` #include <boost/type_traits/make_void.hpp>` or ` #include <boost/type_traits.hpp>`
+
+[table Examples
+
+[[Expression] [Result Type]]
+
+[[`make_void<int>::type`][`void`]]
+
+[[`make_void<int&>::type`] [`void`]]
+
+[[`make_void<int(*)(int)>::type`] [`void`]]
+
+[[`make_void<int[]>::type`] [`void`]]
+
+[[`make_void<int[1]>::type`] [`void`]]
+
+[[`make_void<>::type`] [`void`]]
+
+[[`make_void<int, int>::type`] [`void`]]
+
+]
+
+[all_compilers] However, the type alias `void_t` is only available if the compiler supports template aliases.
+Further, in the absence of variadic-template support, `make_void` only supports up to 5 parameters.
+
+[endsect]
diff --git a/libs/type_traits/doc/type_traits.qbk b/libs/type_traits/doc/type_traits.qbk
index 8a914a4ae9..dd9bfc6312 100644
--- a/libs/type_traits/doc/type_traits.qbk
+++ b/libs/type_traits/doc/type_traits.qbk
@@ -134,6 +134,7 @@
[def __make_signed [link boost_typetraits.reference.make_signed make_signed]]
[def __make_unsigned [link boost_typetraits.reference.make_unsigned make_unsigned]]
+[def __make_void [link boost_typetraits.reference.make_void make_void]]
[def __decay [link boost_typetraits.reference.decay decay]]
[def __is_complex [link boost_typetraits.reference.is_complex is_complex]]
@@ -316,6 +317,7 @@ See __has_trivial_constructor.
[include make_signed.qbk]
[include make_unsigned.qbk]
+[include make_void.qbk]
[include promote.qbk]
[include rank.qbk]
diff --git a/libs/type_traits/test/common_type_2_test.cpp b/libs/type_traits/test/common_type_2_test.cpp
index 8a4e74655d..114b4c281f 100644
--- a/libs/type_traits/test/common_type_2_test.cpp
+++ b/libs/type_traits/test/common_type_2_test.cpp
@@ -90,18 +90,18 @@ TT_TEST_BEGIN(common_type)
#ifndef __SUNPRO_CC
assignation_2<C1C2, C1>();
typedef tt::common_type<C1C2&, C1&>::type T1;
- BOOST_CHECK_TYPE(T1, C1C2);
+ BOOST_CHECK_TYPE(T1, C1C2);
typedef tt::common_type<C3*, C2*>::type T2;
- BOOST_CHECK_TYPE(T2, C2*);
+ BOOST_CHECK_TYPE(T2, C2*);
typedef tt::common_type<int*, int const*>::type T3;
- BOOST_CHECK_TYPE(T3, int const*);
+ BOOST_CHECK_TYPE(T3, int const*);
#if defined(BOOST_NO_CXX11_DECLTYPE) && !defined(BOOST_COMMON_TYPE_DONT_USE_TYPEOF)
// fails if BOOST_COMMON_TYPE_DONT_USE_TYPEOF:
typedef tt::common_type<int volatile*, int const*>::type T4;
- BOOST_CHECK_TYPE(T4, int const volatile*);
+ BOOST_CHECK_TYPE(T4, int const volatile*);
#endif
typedef tt::common_type<int*, int volatile*>::type T5;
- BOOST_CHECK_TYPE(T5, int volatile*);
+ BOOST_CHECK_TYPE(T5, int volatile*);
assignation_2<C1, C1C2>();
assignation_2<C1C2, C2>();
diff --git a/libs/type_traits/test/common_type_test.cpp b/libs/type_traits/test/common_type_test.cpp
index 047b65fc02..3695a46b35 100644
--- a/libs/type_traits/test/common_type_test.cpp
+++ b/libs/type_traits/test/common_type_test.cpp
@@ -87,18 +87,18 @@ TT_TEST_BEGIN(common_type)
{
assignation_2<C1C2, C1>();
typedef tt::common_type<C1C2&, C1&>::type T1;
- BOOST_CHECK_TYPE(T1, C1C2);
+ BOOST_CHECK_TYPE(T1, C1C2);
typedef tt::common_type<C3*, C2*>::type T2;
- BOOST_CHECK_TYPE(T2, C2*);
+ BOOST_CHECK_TYPE(T2, C2*);
typedef tt::common_type<int*, int const*>::type T3;
- BOOST_CHECK_TYPE(T3, int const*);
+ BOOST_CHECK_TYPE(T3, int const*);
#if defined(BOOST_NO_CXX11_DECLTYPE) && !defined(BOOST_COMMON_TYPE_DONT_USE_TYPEOF)
// fails if BOOST_COMMON_TYPE_DONT_USE_TYPEOF:
typedef tt::common_type<int volatile*, int const*>::type T4;
- BOOST_CHECK_TYPE(T4, int const volatile*);
+ BOOST_CHECK_TYPE(T4, int const volatile*);
#endif
typedef tt::common_type<int*, int volatile*>::type T5;
- BOOST_CHECK_TYPE(T5, int volatile*);
+ BOOST_CHECK_TYPE(T5, int volatile*);
assignation_2<C1, C1C2>();
assignation_2<C1C2, C2>();
diff --git a/libs/type_traits/test/is_convertible_test.cpp b/libs/type_traits/test/is_convertible_test.cpp
index 40764c033b..22b32019d4 100644
--- a/libs/type_traits/test/is_convertible_test.cpp
+++ b/libs/type_traits/test/is_convertible_test.cpp
@@ -29,8 +29,8 @@ struct derived2 : public middle2 { };
template<typename T>
struct test_bug_4530
{
- template<typename A>
- test_bug_4530(A&&, typename boost::enable_if< ::tt::is_convertible<A&&, T> >::type* =0);
+ template<typename A>
+ test_bug_4530(A&&, typename boost::enable_if< ::tt::is_convertible<A&&, T> >::type* =0);
};
struct A4530
diff --git a/libs/type_traits/test/make_void_test.cpp b/libs/type_traits/test/make_void_test.cpp
new file mode 100644
index 0000000000..986cdc4430
--- /dev/null
+++ b/libs/type_traits/test/make_void_test.cpp
@@ -0,0 +1,45 @@
+/*
+Copyright 2017 Glen Joseph Fernandes
+<glenjofe -at- gmail.com>
+
+Distributed under the Boost Software License,
+Version 1.0. (See accompanying file LICENSE_1_0.txt
+or copy at http://www.boost.org/LICENSE_1_0.txt)
+*/
+
+#include "test.hpp"
+#include "check_type.hpp"
+
+#ifdef TEST_STD
+#include <type_traits>
+#else
+#include <boost/type_traits/make_void.hpp>
+#endif
+
+TT_TEST_BEGIN(make_void)
+
+BOOST_CHECK_TYPE(::tt::make_void<int>::type, void);
+BOOST_CHECK_TYPE(::tt::make_void<const volatile int>::type, void);
+BOOST_CHECK_TYPE(::tt::make_void<int&>::type, void);
+BOOST_CHECK_TYPE(::tt::make_void<void>::type, void);
+BOOST_CHECK_TYPE(::tt::make_void<int(*)(int)>::type, void);
+BOOST_CHECK_TYPE(::tt::make_void<int[]>::type, void);
+BOOST_CHECK_TYPE(::tt::make_void<int[1]>::type, void);
+
+BOOST_CHECK_TYPE(::tt::make_void<>::type, void);
+BOOST_CHECK_TYPE3(::tt::make_void<int, int>::type, void);
+
+#ifndef BOOST_NO_CXX11_TEMPLATE_ALIASES
+BOOST_CHECK_TYPE(::tt::void_t<int>, void);
+BOOST_CHECK_TYPE(::tt::void_t<const volatile int>, void);
+BOOST_CHECK_TYPE(::tt::void_t<int&>, void);
+BOOST_CHECK_TYPE(::tt::void_t<void>, void);
+BOOST_CHECK_TYPE(::tt::void_t<int(*)(int)>, void);
+BOOST_CHECK_TYPE(::tt::void_t<int[]>, void);
+BOOST_CHECK_TYPE(::tt::void_t<int[1]>, void);
+
+BOOST_CHECK_TYPE(::tt::void_t<>, void);
+BOOST_CHECK_TYPE3(::tt::void_t<int, int>, void);
+#endif
+
+TT_TEST_END
diff --git a/libs/type_traits/test/mpl_interop_test1.cpp b/libs/type_traits/test/mpl_interop_test1.cpp
index 214c951317..3b90418e9e 100644
--- a/libs/type_traits/test/mpl_interop_test1.cpp
+++ b/libs/type_traits/test/mpl_interop_test1.cpp
@@ -27,4 +27,4 @@ int dispatch_test()
int main()
{
return (dispatch_test<int>() == 1) && (dispatch_test<void>() == 0) ? 0 : 1;
-} \ No newline at end of file
+}
diff --git a/libs/type_traits/test/mpl_interop_test2.cpp b/libs/type_traits/test/mpl_interop_test2.cpp
index 4624e0baa1..85805c89fc 100644
--- a/libs/type_traits/test/mpl_interop_test2.cpp
+++ b/libs/type_traits/test/mpl_interop_test2.cpp
@@ -22,4 +22,4 @@ if_test<double>::type t2 = 0;
int main()
{
return (int)(t1 + t2);
-} \ No newline at end of file
+}
diff --git a/libs/type_traits/test/mpl_interop_test3.cpp b/libs/type_traits/test/mpl_interop_test3.cpp
index 0a4c8ac29f..e89d50e5a9 100644
--- a/libs/type_traits/test/mpl_interop_test3.cpp
+++ b/libs/type_traits/test/mpl_interop_test3.cpp
@@ -27,4 +27,4 @@ int main()
lambda_test<list_type>::type i = 0;
return i;
-} \ No newline at end of file
+}