<html>
<body>
<div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
<table bgcolor="#f9f3c9" width="100%" cellpadding="8" style="border: 1px #c9c399 solid;">
<tr>
<td>
This is an automatically generated e-mail. To reply, visit:
<a href="http://git.reviewboard.kde.org/r/104498/">http://git.reviewboard.kde.org/r/104498/</a>
</td>
</tr>
</table>
<br />
<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">hey ivan, thanks for the preprocessor fix, I'll review that as well and try to add another unit test and push it into 4.3 as well. in the future, please create a second review request for that (it's unrelated to the noexcept stuff after all)</pre>
<br />
<p>- Milian</p>
<br />
<p>On April 7th, 2012, 11:53 a.m., Ivan Shapovalov wrote:</p>
<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('http://git.reviewboard.kde.org/media/rb/images/review_request_box_top_bg.png'); background-position: left top; background-repeat: repeat-x; border: 1px black solid;">
<tr>
<td>
<div>Review request for KDevelop.</div>
<div>By Ivan Shapovalov.</div>
<p style="color: grey;"><i>Updated April 7, 2012, 11:53 a.m.</i></p>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
<tr>
<td>
<pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Adds initial parser support for "noexcept" and "noexcept(...)" declaration specifiers in KDevelop C++ parser.
This is particularly useful with new GCC toolchain version 4.7.0, where these keywords are frequently used throughout STL.
UPDATE: Also, fixed preprocessor bug when numeric values ending with "L" failed to parse correctly. This is also related to GCC 4.7.0 toolchain support
since there exist constructions like "#if __cplusplus", where __cplusplus is defined to 201103L.</pre>
</td>
</tr>
</table>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
<tr>
<td>
<pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">A test file with intensive STL usage is uploaded.
Steps to reproduce:
1) Open the test file in KDevelop 4.3.60 compiled from branch 'master' (commit 8c73677)
See that "std::pair<>" is resolved as function with no return type; "std::map<>" and "std::vector<>" are not highlighted at all.
2) Apply patches, rebuild KDevelop and clear your current DUChain cache
# rm -rf ~/.kdevduchain
3) Reopen the test file
See that all STL typedefs and method calls are parsed and highlighted correctly.</pre>
</td>
</tr>
</table>
<div style="margin-top: 1.5em;">
<b style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Bugs: </b>
<a href="http://bugs.kde.org/show_bug.cgi?id=297604">297604</a>
</div>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">
<li>languages/cpp/parser/ast.h <span style="color: grey">(46ecac7)</span></li>
<li>languages/cpp/parser/codegenerator.cpp <span style="color: grey">(962fe5b)</span></li>
<li>languages/cpp/parser/default_visitor.cpp <span style="color: grey">(174e5d9)</span></li>
<li>languages/cpp/parser/lexer.cpp <span style="color: grey">(0cdad1e)</span></li>
<li>languages/cpp/parser/parser.cpp <span style="color: grey">(50c09a8)</span></li>
<li>languages/cpp/parser/rpp/pp-engine.cpp <span style="color: grey">(2d0e9ea)</span></li>
<li>languages/cpp/parser/tokens.h <span style="color: grey">(3e73330)</span></li>
<li>languages/cpp/parser/tokens.cpp <span style="color: grey">(3d8c05f)</span></li>
</ul>
<p><a href="http://git.reviewboard.kde.org/r/104498/diff/" style="margin-left: 3em;">View Diff</a></p>
</td>
</tr>
</table>
</div>
</body>
</html>