<table><tr><td style="">flherne created this revision.<br />flherne added a reviewer: brauch.<br />flherne set the repository for this revision to R53 KDevelop: Python Support.<br />Restricted Application added a subscriber: kdevelop-devel.
</td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; float: right; color: #464C5C; font-weight: bold; border-radius: 3px; background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); display: inline-block; border: 1px solid rgba(71,87,120,.2);" href="https://phabricator.kde.org/D3640" rel="noreferrer">View Revision</a></tr></table><br /><div><strong>REVISION SUMMARY</strong><div><p>Instance methods can be called via the class:<br />
 <tt style="background: #ebebeb; font-size: 13px;">Class.method(instance, arg)</tt></p>

<p>Self arguments are handled separately. With an explicit <tt style="background: #ebebeb; font-size: 13px;">instance</tt> argument as in the example, its type was wrongly used for the next argument with all subsequent argtypes offset by one.</p>

<p>BUG: 369364</p>

<p>Simply skip such arguments where they exist.</p></div></div><br /><div><strong>TEST PLAN</strong><div><p>Test <tt style="background: #ebebeb; font-size: 13px;">method_explicit_self</tt> previously failed, now passes.<br />
Test <tt style="background: #ebebeb; font-size: 13px;">parent_constructor_arg_type</tt> previously failed.<br />
Now it fails on the first run, but gets the correct type if reloading the document.<br />
Probably related to <a href="https://bugs.kde.org/show_bug.cgi?id=306213" class="remarkup-link" target="_blank" rel="noreferrer">https://bugs.kde.org/show_bug.cgi?id=306213</a></p>

<p>Other new tests passed already.<br />
No test regressions.</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>R53 KDevelop: Python Support</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D3640" rel="noreferrer">https://phabricator.kde.org/D3640</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>duchain/declarationbuilder.cpp<br />
duchain/tests/pyduchaintest.cpp</div></div></div><br /><div><strong>EMAIL PREFERENCES</strong><div><a href="https://phabricator.kde.org/settings/panel/emailpreferences/" rel="noreferrer">https://phabricator.kde.org/settings/panel/emailpreferences/</a></div></div><br /><div><strong>To: </strong>flherne, brauch<br /><strong>Cc: </strong>kdevelop-devel<br /></div>