8000 no-useless-constructor: Cannot read property 'body' of null · Issue #420 · typescript-eslint/typescript-eslint · GitHub
[go: up one dir, main page]

Skip to content
no-useless-constructor: Cannot read property 'body' of null #420
Closed
@SebastiaanYN

Description

@SebastiaanYN

This seems to be the same issue as #15.


What code were you trying to parse?

// src/foo.ts
class Foo {
    constructor();
    constructor(obj: any);
    constructor(obj?: any) {
        console.log(obj);
  }
}

This also happens with both examples from the other issue,

declare class Foo {
  constructor();
}

and

class Foo {
  constructor();
}

When the ESLint no-useless-constructor rule is disabled, the issue doesn't show.

What did you expect to happen?
ESLint sees the code as correct.

What actually happened?
ESLint gives an error, because the body of some constructors can't be found.

TypeError: Cannot read property 'body' of null
Occurred while linting /home/sebastiaanyn/Projects/Syntek/src/foo.ts:2
    at checkForConstructor (/home/sebastiaanyn/Projects/Syntek/node_modules/eslint/lib/rules/no-useless-constructor.js:169:42)
    at listeners.(anonymous function).forEach.listener (/home/sebastiaanyn/Projects/Syntek/node_modules/eslint/lib/util/safe-emitter.js:45:58)
    at Array.forEach (<anonymous>)
    at Object.emit (/home/sebastiaanyn/Projects/Syntek/node_modules/eslint/lib/util/safe-emitter.js:45:38)
    at NodeEventGenerator.applySelector (/home/sebastiaanyn/Projects/Syntek/node_modules/eslint/lib/util/node-event-generator.js:251:26)
    at NodeEventGenerator.applySelectors (/home/sebastiaanyn/Projects/Syntek/node_modules/eslint/lib/util/node-event-generator.js:280:22)
    at NodeEventGenerator.enterNode (/home/sebastiaanyn/Projects/Syntek/node_modules/eslint/lib/util/node-event-generator.js:294:14)
    at CodePathAnalyzer.enterNode (/home/sebastiaanyn/Projects/Syntek/node_modules/eslint/lib/code-path-analysis/code-path-analyzer.js:632:23)
    at nodeQueue.forEach.traversalInfo (/home/sebastiaanyn/Projects/Syntek/node_modules/eslint/lib/linter.js:752:32)
    at Array.forEach (<anonymous>)

Versions

package version
@typescript-eslint/eslint-plugin 1.6.0
@typescript-eslint/parser 1.6.0
TypeScript 3.4.2
ESLint 5.16.0
node 11.8.0
npm 6.9.0

Metadata

Metadata

Assignees

No one assigned

    Labels

    package: parserIssues related to @typescript-eslint/parserworking as intendedIssues that are closed as they are working as intended

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      0