<html>
 <body>
  <div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
   <table bgcolor="#f9f3c9" width="100%" cellpadding="12" style="border: 1px #c9c399 solid; border-radius: 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
    <tr>
     <td>
      This is an automatically generated e-mail. To reply, visit:
      <a href="https://git.reviewboard.kde.org/r/123715/">https://git.reviewboard.kde.org/r/123715/</a>
     </td>
    </tr>
   </table>
   <br />





<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
 <p style="margin-top: 0;">On May 10th, 2015, 5:22 p.m. MSK, <b>Olivier Jean de Gaalon</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">The DUContext structure was purposefully changed in kdev-clang. internalFunctionContext should not be used anymore, as it's broken (see DUContext::Import::context). The current context structure accurately represents scope without requiring convoluted import logic.
What's the issue that this targets? So that we can fix it without reintroducing this sad bit of history...</pre>
 </blockquote>







</blockquote>

<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">I see. The issue I'm trying to fix is that the declarations/uses in the DUContext::Other contexts don't get highlighted. Anyway, I've just uploaded a much simplier solution.</p></pre>
<br />










<p>- Sergey</p>


<br />
<p>On May 10th, 2015, 5:12 p.m. MSK, Sergey Kalinichev wrote:</p>








<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="12" style="border: 1px #888a85 solid; border-radius: 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
 <tr>
  <td>

<div>Review request for KDevelop.</div>
<div>By Sergey Kalinichev.</div>


<p style="color: grey;"><i>Updated May 10, 2015, 5:12 p.m.</i></p>









<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt;">Repository: </b>
kdev-clang
</div>


<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;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">This chances the current approach: DUContext::Function context is the parent of the DUContext::Other context to top/class context is the parent of the DUContext::Function and the DUContext::Other contexts.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">This is what the oldcpp does. Also this enables code-highlighting of function internal contexts, i.e. within {...}</p></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;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Some tests still fail: defaultparameters.cpp - seems like due to a bug in the JSON test, as it expects the DUContext::Function context to be owned by the function declaration, which is impossible if the Function context is set as internalFunctionContext (also this test fails for the oldcpp too);  and assistans test - due to wrong signature range (planning to fix it later on)</p></pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">

 <li>duchain/duchainutils.cpp <span style="color: grey">(38bd0c3)</span></li>

 <li>duchain/tuduchain.h <span style="color: grey">(be76259)</span></li>

 <li>duchain/tuduchain.cpp <span style="color: grey">(5e460b8)</span></li>

 <li>tests/files/basicdeclsandcontexts.cpp <span style="color: grey">(03aefc2)</span></li>

 <li>tests/files/defaultparameters.cpp <span style="color: grey">(693c1d3)</span></li>

 <li>tests/files/functiondefinitiondeclarations.cpp <span style="color: grey">(037c065)</span></li>

 <li>tests/files/functions.cpp <span style="color: grey">(4fbcc68)</span></li>

 <li>tests/files/imports.cpp <span style="color: grey">(a2cf9e3)</span></li>

 <li>tests/test_duchain.cpp <span style="color: grey">(41cb3d9)</span></li>

</ul>

<p><a href="https://git.reviewboard.kde.org/r/123715/diff/" style="margin-left: 3em;">View Diff</a></p>






  </td>
 </tr>
</table>







  </div>
 </body>
</html>