Skip to content

Compile error for class inherited from Boolean, Number etc #7

@Bored66

Description

@Bored66

Suppose, we trying to compile code:

// class C extends Boolean {
    constructor(val: boolean) {
        super(val);
    }
}
new C(false);

While the code is legit for vanilla ts our compile gives us the following error:

// Error: Unable to find constructor symbol for ambient class '@Size(4)
//@ts-ignore
@VTableSize(9)
//@ts-ignore
@VirtualDestructor
declare class Boolean {
    constructor(_: any);
    negate(): boolean;
    clone(): boolean;
    //@ts-ignore
    @VTableIndex(3)
    toString(): string;
    //@ts-ignore
    @VTableIndex(4)
    toBool(): boolean;
    //@ts-ignore
    @VTableIndex(5)
    equals(other: Object): boolean;
    unboxed(): number;
}'. Error at: 'super(val);'
    at FunctionHandler.handleSuperCall (/snapshot/8e311344d86ff357f168bf295d7e9520039ff44a/compiler/handlers/expression/functionhandler.js)
    at FunctionHandler.handle (/snapshot/8e311344d86ff357f168bf295d7e9520039ff44a/compiler/handlers/expression/functionhandler.js)
    at CompoundAssignmentHandler.handle (/snapshot/8e311344d86ff357f168bf295d7e9520039ff44a/compiler/handlers/expression/compoundhandler.js)
    at ComparisonHandler.handle (/snapshot/8e311344d86ff357f168bf295d7e9520039ff44a/compiler/handlers/expression/comparisonhandler.js)
    at CastHandler.handle (/snapshot/8e311344d86ff357f168bf295d7e9520039ff44a/compiler/handlers/expression/casthandler.js)
    at BitwiseHandler.handle (/snapshot/8e311344d86ff357f168bf295d7e9520039ff44a/compiler/handlers/expression/bitwisehandler.js)
    at AssignmentHandler.handle (/snapshot/8e311344d86ff357f168bf295d7e9520039ff44a/compiler/handlers/expression/assignmenthandler.js)
    at ArithmeticHandler.handle (/snapshot/8e311344d86ff357f168bf295d7e9520039ff44a/compiler/handlers/expression/arithmetichandler.js)
    at AccessHandler.handle (/snapshot/8e311344d86ff357f168bf295d7e9520039ff44a/compiler/handlers/expression/accesshandler.js)
    at NoopHandler.handle (/snapshot/8e311344d86ff357f168bf295d7e9520039ff44a/compiler/handlers/expression/noophandler.js)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions