<html>#2207: support all of C++11 in Cactus or the Einstein Toolkit
<table style='border-spacing: 1ex 0pt; '>
<tr><td style='text-align:right'> Reporter:</td><td>Roland Haas</td></tr>
<tr><td style='text-align:right'>   Status:</td><td>new</td></tr>
<tr><td style='text-align:right'>Milestone:</td><td></td></tr>
<tr><td style='text-align:right'>  Version:</td><td>development version</td></tr>
<tr><td style='text-align:right'>     Type:</td><td>enhancement</td></tr>
<tr><td style='text-align:right'> Priority:</td><td>minor</td></tr>
<tr><td style='text-align:right'>Component:</td><td>Cactus</td></tr>
</table>

<p>Changes (by Roland Haas):</p>
<p><table>
<tr><td>assignee:</td><td>Roland Haas (was )</td></tr>
<tr><td>responsible:</td><td>[] (was )</td></tr>
</table></p>
<p>We are currently allowing a subset of C++11 to be used in Cactus and the Einstein Toolkit. Looking at configure.in the supported features are:</p>
<ul>
<li>the auto specifier</li>
<li>C++ lambdas</li>
<li>C++ range based for</li>
</ul>
<p>To support all interesting features one would need at least icpc 15 as well as g++ 4.8 and clang 3.3.</p>
<h2 id="markdown-header-compiler-support">Compiler support</h2>
<p>The major compilers provide the following information on the features they support:</p>
<ul>
<li><a data-is-external-link="true" href="http://en.cppreference.com/w/cpp/compiler_support" rel="nofollow">Overview on cppreference.com</a></li>
<li><a data-is-external-link="true" href="http://software.intel.com/en-us/articles/c0x-features-supported-by-intel-c-compiler" rel="nofollow">Features supported by Intel compilers</a></li>
<li><a data-is-external-link="true" href="http://gcc.gnu.org/projects/cxx0x.html" rel="nofollow">Features supported by gcc compilers</a></li>
<li><a data-is-external-link="true" href="http://clang.llvm.org/cxx_status.html" rel="nofollow">Features supported by clang compilers</a></li>
</ul>
<p>This summarizes the specific C++11 <strong>language</strong> features.</p>
<table>
<thead>
<tr>
<th></th>
<th></th>
<th></th>
<th>= Description =</th>
<th></th>
<th>= GCC version =</th>
<th></th>
<th>= Intel version =</th>
<th></th>
<th>= Clang version =</th>
<th></th>
<th>= Notes =</th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td></td>
<td>= <a data-is-external-link="true" href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2242.pdf" rel="nofollow">N2242</a> \ <a data-is-external-link="true" href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2555.pdf" rel="nofollow">N2552</a> =</td>
<td></td>
<td>variadic templates</td>
<td></td>
<td>4.3 \ 4.4</td>
<td></td>
<td>12.1</td>
<td></td>
<td>2.9</td>
<td></td>
<td>Wikipedia: <a data-is-external-link="true" href="http://en.wikipedia.org/wiki/Variadic_template" rel="nofollow">(1)</a></td>
<td></td>
</tr>
<tr>
<td></td>
<td>= <a data-i
<p>--<br/>
Ticket URL: <a href='https://bitbucket.org/einsteintoolkit/tickets/issues/2207/support-all-of-c-11-in-cactus-or-the'>https://bitbucket.org/einsteintoolkit/tickets/issues/2207/support-all-of-c-11-in-cactus-or-the</a></p>
</html>