Review Request 111598: Fix late static binding support in kdev-php
Heinz Wiesinger
pprkut at liwjatan.at
Fri Jul 19 13:00:52 UTC 2013
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/111598/
-----------------------------------------------------------
Review request for KDevelop.
Description
-------
Fix the support for PHP 5.3's late static binding so that the 'static' keyword in
return static::property;
or
return static()
maps to the class it was declared in.
This is not 100% correct behavior, but since static is evaluated at runtime we can not determine at parsing what class type it really is.
However, it's always gonna be either the class it was declared in or one that extends the class it was declared in, so using that class as type should
provide better information than for example mixed.
This addresses bug 278085.
http://bugs.kde.org/show_bug.cgi?id=278085
Diffs
-----
duchain/builders/typebuilder.cpp 229c5c978b2bc77a2135a2b62c6ebf468e6d7b41
duchain/expressionvisitor.cpp 35f375a8f6f4a8e195b954548e01516c222f949b
duchain/helper.cpp 5628e10156d5b82d0beefcf8e65cda1f543a19eb
duchain/tests/expressionparser.h 9b3a561d2f2802545b3dbff4c127ae64441b9ef0
duchain/tests/expressionparser.cpp 9e76b0c7454fbf0f801816e006b9b273c43d141f
parser/php.g 34b4b671a3cec05b075adfc946dc3da110657b26
Diff: http://git.reviewboard.kde.org/r/111598/diff/
Testing
-------
Unit test and example code.
Thanks,
Heinz Wiesinger
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20130719/204c7a17/attachment.html>
More information about the KDevelop-devel
mailing list