Heinz Wiesinger <> changed:

           What    |Removed                     |Added
             Status|UNCONFIRMED                 |RESOLVED
      Latest Commit|                            |
                   |                            |v-php/8c5e258640e8c70889ba1
                   |                            |b3f796d3143240a7cda
   Version Fixed In|                            |5.3.0
         Resolution|---                         |FIXED

--- Comment #1 from Heinz Wiesinger <> ---
Git commit 8c5e258640e8c70889ba1b3f796d3143240a7cda by Heinz Wiesinger.
Committed on 13/06/2018 at 19:10.
Pushed by wiesinger into branch 'master'.

Fix using reserved type names in identifiers.

Remove special tokens for base type names (PHP itself doesn't
have them either in their AST). Unfortunately, keeping them,
while cleaner, is also a lot more complicated and would leave
us with double the amount of FIRST/FIRST conflicts in the grammar.
(Mostly when NamespacedIdentifiers would conflict with base types
in typehints. Think 'String\Stringhandler $foo' vs 'string $bar'.

Removing the tokens essentially immediately resolves the bug,
with the remaining work just being error handling and a bit of
Related: bug 392759
FIXED-IN: 5.3.0

Reviewers: mwolff

Reviewed By: mwolff

Subscribers: mwolff, kdevelop-devel

Tags: #kdevelop

Differential Revision:

M  +0    -5    completion/context.cpp
M  +64   -2    duchain/builders/declarationbuilder.cpp
M  +3    -0    duchain/builders/declarationbuilder.h
M  +4    -4    duchain/builders/usebuilder.cpp
M  +5    -4    duchain/expressionvisitor.cpp
M  +71   -32   duchain/helper.cpp
M  +3    -0    duchain/helper.h
M  +193  -1    duchain/tests/duchain.cpp
M  +6    -0    duchain/tests/duchain.h
M  +7    -19   parser/php.g
M  +0    -10   parser/phplexer.cpp
M  +1    -1    parser/test/lexertest.cpp

You are receiving this mail because:
You are watching all bug changes.

Reply via email to