Skip to content

constructor can't be the name of class accessors and generators. #48948

Closed
@g-plane

Description

@g-plane

Bug Report

In classes, accessors (aka getters/setters) and generators can't be named with constructor. They're Syntax Errors defined in spec.

References:

🔎 Search Terms

constructor
getter
setter
accessor
generator

🕗 Version & Regression Information

Tested on 4.5.5, 4.6.2 and Nightly (4.7).

⏯ Playground Link

Playground link with relevant code

💻 Code

class C1 {
    get constructor() {
        return
    }
    set constructor(value) {}
}

class C2 {
    *constructor() {}
}

🙁 Actual behavior

No errors reported.

🙂 Expected behavior

TypeScript should report errors for misusing constructor as accessor name for Line 2 and Line 5, and report error for misusing constructor as generator for Line 9 in the example above.

Metadata

Metadata

Assignees

No one assigned

    Labels

    BugA bug in TypeScriptFixedA PR has been merged for this issueGood First IssueWell scoped, documented and has the green lightHelp WantedYou can do this

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions