Skip to content

Generics with 'extends' for return types cause type check failure. #13993

@na-o-ys

Description

@na-o-ys

TypeScript Version: 2.2.0

Code

interface I { attr: string }

type M = <T extends I>() => T
const v: M = () => ({})

v().attr

Expected behavior:

Type '() => {}' is not assignable to type 'M'. Type '{}' is not assignable to type 'I'.

Actual behavior:

The compilation is successful.

Metadata

Metadata

Assignees

No one assigned

    Labels

    FixedA PR has been merged for this issueNeeds InvestigationThis issue needs a team member to investigate its status.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions