Vscode-intelephense: TypeError: Cannot read property 'kind' of undefined

Created on 11 Mar 2019  路  10Comments  路  Source: bmewburn/vscode-intelephense

I get the following stacktrace when trying to write foreach on the line specified in the code example.

[Error - 09:23:37] TypeError: Cannot read property 'kind' of undefined
    at _definitionFilter (c:\Users\Username\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:177248)
    at a (c:\Users\Username\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:168864)
    at t.DefinitionStore.match (c:\Users\Username\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:58876)
    at match.next (<anonymous>)
    at T.completions (c:\Users\Username\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:169089)
    at T.completions (c:\Users\Username\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:177062)
    at t.CompletionProvider.provideCompletionItems (c:\Users\Username\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:166614)
    at t.Intelephense.<anonymous> (c:\Users\Username\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:160318)
    at Generator.next (<anonymous>)
    at c:\Users\Username\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:155701
[Error - 09:23:37] Request textDocument/completion failed.
  Message: Request textDocument/completion failed with message: Cannot read property 'kind' of undefined
  Code: -32603 

Restarting VSCode and trying to invoke autocompletion again yields the following stacktrace:

[Info  - 09:31:37] Initialising
[Info  - 09:31:37] Reading state from c:\Users\Username\AppData\Roaming\Code\User\workspaceStorage\bfdcffb40442fdb41e319d30cc87e0ac\bmewburn.vscode-intelephense-client\6341b4ad.
[Info  - 09:31:37] Initialised in 610 ms
[Info  - 09:31:37] Intelephense 1.0.8
[Info  - 09:31:38] Indexing started.
[Info  - 09:31:38] Indexing ended. 3 files indexed in 0s.
[Info  - 09:31:38] Writing state to c:\Users\Username\AppData\Roaming\Code\User\workspaceStorage\bfdcffb40442fdb41e319d30cc87e0ac\bmewburn.vscode-intelephense-client\6341b4ad.
[Info  - 09:31:39] Wrote state in 0.8s.
[Error - 09:31:58] TypeError: Cannot read property 'kind' of undefined
    at _definitionFilter (c:\Users\Username\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:177248)
    at a (c:\Users\Username\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:168864)
    at t.DefinitionStore.match (c:\Users\Username\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:58876)
    at match.next (<anonymous>)
    at T.completions (c:\Users\Username\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:169089)
    at T.completions (c:\Users\Username\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:177062)
    at t.CompletionProvider.provideCompletionItems (c:\Users\Username\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:166614)
    at t.Intelephense.<anonymous> (c:\Users\Username\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:160318)
    at Generator.next (<anonymous>)
    at c:\Users\Username\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:155701
[Error - 09:31:58] Request textDocument/completion failed.
  Message: Request textDocument/completion failed with message: Cannot read property 'kind' of undefined
  Code: -32603 

The file that causes this issue is the following:

<?php

namespace Application\Controllers;

use Slim\Http\Request;
use Slim\Http\Response;
use Slim\Http\Stream;

class FilesManagementController extends Controller {

    /**
     * Upload one or more files
     *
     * @return \Slim\Http\Response
     */
    public function postUpload(Request $request, Response $response, array $args) {
        $path = $request->getQueryParam("path", "");

        // <-- The completion fails here when starting to write "foreach"
    }
}

Please let me know if further data is needed. Thanks.

bug

Most helpful comment

I get this same error message every time a start writing a variable by typing $.

[Error - 22:59:42] TypeError: Cannot read property 'kind' of undefined
    at isSuperGlobal (c:\Users\Administrator\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:175915)
    at t.DefinitionStore.match (c:\Users\Administrator\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:58876)
    at match.next (<anonymous>)
    at S.completions (c:\Users\Administrator\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:173895)
    at t.CompletionProvider.provideCompletionItems (c:\Users\Administrator\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:166614)
    at t.Intelephense.<anonymous> (c:\Users\Administrator\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:160318)
    at Generator.next (<anonymous>)
    at c:\Users\Administrator\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:155701
    at new Promise (<anonymous>)
    at i (c:\Users\Administrator\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:155478)
[Error - 22:59:42] Request textDocument/completion failed.
  Message: Request textDocument/completion failed with message: Cannot read property 'kind' of undefined
  Code: -32603

All 10 comments

I get the same jarring error intrude my workspace when trying to write laravel eloquent query closures sometimes.

[Error - 09:18:18] TypeError: Cannot read property 'kind' of undefined
    at _definitionFilter (/home/uphlewis/.vscode/extensions/bmewburn.vscode-intelephense-client-1.0.8/node_modules/intelephense/lib/intelephense.js:39:177248)
    at a (/home/uphlewis/.vscode/extensions/bmewburn.vscode-intelephense-client-1.0.8/node_modules/intelephense/lib/intelephense.js:39:168864)
    at t.DefinitionStore.match (/home/uphlewis/.vscode/extensions/bmewburn.vscode-intelephense-client-1.0.8/node_modules/intelephense/lib/intelephense.js:39:58876)
    at match.next (<anonymous>)
    at T.completions (/home/uphlewis/.vscode/extensions/bmewburn.vscode-intelephense-client-1.0.8/node_modules/intelephense/lib/intelephense.js:39:169089)
    at T.completions (/home/uphlewis/.vscode/extensions/bmewburn.vscode-intelephense-client-1.0.8/node_modules/intelephense/lib/intelephense.js:39:177062)
    at t.CompletionProvider.provideCompletionItems (/home/uphlewis/.vscode/extensions/bmewburn.vscode-intelephense-client-1.0.8/node_modules/intelephense/lib/intelephense.js:39:166614)
    at t.Intelephense.<anonymous> (/home/uphlewis/.vscode/extensions/bmewburn.vscode-intelephense-client-1.0.8/node_modules/intelephense/lib/intelephense.js:39:160318)
    at Generator.next (<anonymous>)
    at /home/uphlewis/.vscode/extensions/bmewburn.vscode-intelephense-client-1.0.8/node_modules/intelephense/lib/intelephense.js:39:155701
[Error - 09:18:18] Request textDocument/completion failed.
  Message: Request textDocument/completion failed with message: Cannot read property 'kind' of undefined
  Code: -32603 

I get this same error message every time a start writing a variable by typing $.

[Error - 22:59:42] TypeError: Cannot read property 'kind' of undefined
    at isSuperGlobal (c:\Users\Administrator\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:175915)
    at t.DefinitionStore.match (c:\Users\Administrator\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:58876)
    at match.next (<anonymous>)
    at S.completions (c:\Users\Administrator\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:173895)
    at t.CompletionProvider.provideCompletionItems (c:\Users\Administrator\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:166614)
    at t.Intelephense.<anonymous> (c:\Users\Administrator\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:160318)
    at Generator.next (<anonymous>)
    at c:\Users\Administrator\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:155701
    at new Promise (<anonymous>)
    at i (c:\Users\Administrator\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:155478)
[Error - 22:59:42] Request textDocument/completion failed.
  Message: Request textDocument/completion failed with message: Cannot read property 'kind' of undefined
  Code: -32603

I'm noticing this error as well. Here's part of the stacktrace:

Error: Invalid Argument
    at t.SignatureHelpFactory.<anonymous> (c:\Users\Staff\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:249201)
    at Generator.next (<anonymous>)
    at c:\Users\Staff\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:245588
    at new Promise (<anonymous>)
    at i (c:\Users\Staff\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:245365)
    at t.SignatureHelpFactory.toSignatureInformation (c:\Users\Staff\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:248930)
    at t.SignatureHelpFactory.<anonymous> (c:\Users\Staff\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:248587)
    at Generator.next (<anonymous>)
    at c:\Users\Staff\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:245588
    at new Promise (<anonymous>)
[Error - 3:38:19 PM] Request textDocument/signatureHelp failed.
  Message: Request textDocument/signatureHelp failed with message: Invalid Argument
  Code: -32603 
[Error - 3:39:55 PM] Error: Invalid Argument
    at t.SignatureHelpFactory.<anonymous> (c:\Users\Staff\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:249201)
    at Generator.next (<anonymous>)
    at c:\Users\Staff\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:245588
    at new Promise (<anonymous>)
    at i (c:\Users\Staff\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:245365)
    at t.SignatureHelpFactory.toSignatureInformation (c:\Users\Staff\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:248930)
    at t.SignatureHelpFactory.<anonymous> (c:\Users\Staff\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:248587)
    at Generator.next (<anonymous>)
    at c:\Users\Staff\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.8\node_modules\intelephense\lib\intelephense.js:39:245588
    at new Promise (<anonymous>)
[Error - 3:39:55 PM] Request textDocument/signatureHelp failed.
  Message: Request textDocument/signatureHelp failed with message: Invalid Argument
  Code: -32603 

Still investigating this one. Somehow undefined values are getting in the symbol index. Re indexing should fix it in the meantime. ctrl + shift + p -> Intelephense: Index workspace

Same problem, restart and Index workspace don't help

[Error - 13:29:35] TypeError: Cannot read property 'kind' of undefined
    at isSuperGlobal (c:\Users\Scorp\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.14\node_modules\intelephense\lib\intelephense.js:175:72618)
    at t.DefinitionStore.match (c:\Users\Scorp\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.14\node_modules\intelephense\lib\intelephense.js:77:10486)
    at match.next (<anonymous>)
    at y.completions (c:\Users\Scorp\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.14\node_modules\intelephense\lib\intelephense.js:175:70574)
    at t.CompletionProvider.provideCompletionItems (c:\Users\Scorp\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.14\node_modules\intelephense\lib\intelephense.js:175:63208)
    at t.Intelephense.<anonymous> (c:\Users\Scorp\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.14\node_modules\intelephense\lib\intelephense.js:175:56868)
    at Generator.next (<anonymous>)
    at c:\Users\Scorp\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.14\node_modules\intelephense\lib\intelephense.js:175:52237
    at new Promise (<anonymous>)
    at i (c:\Users\Scorp\.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.14\node_modules\intelephense\lib\intelephense.js:175:52014)
[Error - 13:29:35] Request textDocument/completion failed.
  Message: Request textDocument/completion failed with message: Cannot read property 'kind' of undefined
  Code: -32603 

the code where it happens

namespace App\Access\Factory\UserIdentity;

use App\Access\Factory\UserIdentityFactoryInterface;
use App\Access\Exception\UserIdentityFactoryException;
use App\Access\Document\UserIdentity;
use App\Access\Model\UserIdentityInterface;

class UserIdentityUsernameFactory implements UserIdentityFactoryInterface {
    protected $regexp;
    protected $convertToLowercase;

    /**
     * @param bool $convertToLowercase If false the user won't be able to login using another letter case
     * @param string $regexp
     */
    public function __construct(bool $convertToLowercase = true, string $regexp = "/^[\w\d\-\_]{3,32}$/")
    {
        $this->regexp = $regexp;
        $this->convertToLowercase = $convertToLowercase;
    }

    /**
     * @param array|string|int|float $rawIdentifier
     * @return UserIdentityInterface
     * @throws UserIdentityFactoryException
     */
    public function create($rawIdentifier): UserIdentityInterface
    {
        if(! is_string($rawIdentifier)) {
            throw new UserIdentityFactoryException('Identifier expected to be a string, got ' . gettype($rawIdentifier));
        }

        if(!preg_match($this->regexp, $rawIdentifier)) {
            throw new UserIdentityFactoryException('Wrong Identifier format');
        }

        return new UserIdentity($this->convertToLowercase ? strtolower($rawIdentifier) : $rawIdentifier);
    }
}

I've been experiencing this same issue. I've had to disable the plugin (which is a shame as it previously worked great). I've also tried the re-indexing and restart mentioned above.

Same problem here. Unfortunately re-indexing does not help at all.

[Info  - 14:54:21] Indexing started.
[Info  - 14:54:21] Indexing ended. 32 files indexed in 0s.
[Info  - 14:54:21] Writing state to 鈥AppData\Roaming\Code\User\workspaceStorage\2f602d0ff0128410a8644df1da0e64b7\bmewburn.vscode-intelephense-client\276cb306.
[Info  - 14:54:25] Wrote state in 3.4s.
[Error - 14:55:26] TypeError: Cannot read property 'kind' of undefined
    at isSuperGlobal (鈥.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.14\node_modules\intelephense\lib\intelephense.js:175:72618)
    at t.DefinitionStore.match (鈥.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.14\node_modules\intelephense\lib\intelephense.js:77:10486)
    at match.next (<anonymous>)
    at y.completions (鈥.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.14\node_modules\intelephense\lib\intelephense.js:175:70574)
    at t.CompletionProvider.provideCompletionItems (鈥.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.14\node_modules\intelephense\lib\intelephense.js:175:63208)
    at t.Intelephense.<anonymous> (鈥.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.14\node_modules\intelephense\lib\intelephense.js:175:56868)
    at Generator.next (<anonymous>)
    at 鈥.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.14\node_modules\intelephense\lib\intelephense.js:175:52237
    at new Promise (<anonymous>)
    at i (鈥.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.14\node_modules\intelephense\lib\intelephense.js:175:52014)
[Error - 14:55:26] Request textDocument/completion failed.
  Message: Request textDocument/completion failed with message: Cannot read property 'kind' of undefined
  Code: -32603 

I am unable to discern any specific reproduction.

Ah, deleting the

鈥AppData\Roaming\Code\User\workspaceStorage\2f602d0ff0128410a8644df1da0e64b7

folder manually and then re-indexing helped. There does not seem to be a way to truly re-index currently?

I'm getting the same thing. Tried re-indexing and deleting the workspaceStorage folder manually, then re-indexing and still not helping. I'm working on a large file and not really able to pinpoint the line(s) causing the issue.

Stack:
TypeError: Cannot read property 'kind' of null
at p.ruleFromCurrentToken (c:\Users\aj.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.14\node_modules\intelephense\lib\intelephense.js:108:23641)
at preorder (c:\Users\aj.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.14\node_modules\intelephense\lib\intelephense.js:108:19165)
at f.visitNode (c:\Users\aj.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.14\node_modules\intelephense\lib\intelephense.js:40:10377)
at f.visitNode (c:\Users\aj.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.14\node_modules\intelephense\lib\intelephense.js:40:10462)
at f.visitNode (c:\Users\aj.vscode\extensions\bmewburn.vscode-intelephense-client-1.0.14\node_modules\intelephense\lib\intelephense.js:40:10462)
...

@bmewburn where you able to find the cause and a fix?

Was this page helpful?
0 / 5 - 0 ratings

Related issues

aleksandervines picture aleksandervines  路  3Comments

steven7mwesigwa picture steven7mwesigwa  路  4Comments

mushmelty picture mushmelty  路  4Comments

umpirsky picture umpirsky  路  4Comments

dgunay picture dgunay  路  3Comments