Skip to content

Circular inference failure (regression) #16512

Closed

Description

TypeScript Version: 2.5.0-dev.20170613

Code

I tried to make a simple repro but it failed. I had to add the annotation as follows. The previous code was working until 2.4.0-dev.20170606.

falsandtru/pjax-api@f5dbc6d

-  .extract(parser => (html: string) => Just(parser(html)));
+  .extract(parser => (html: string): Maybe<Document> => Just(parser(html)));

Expected behavior:

no error

Actual behavior:

TypeScript error: src/lib/html.ts(9,22): Error TS7024: Function implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions.

Activity

  1. ahejlsberg commented on Jun 14, 2017

    @ahejlsberg
    Member

    I'm quite certain this relates to #16072 and #16305. Since we now make inferences from the return types of generic functions we will at times more eagerly resolve return statements and return expressions of lambdas. That appears to be what is happening here and I'm not sure there's much we can do about it.

  2. falsandtru commented on Jun 14, 2017

    @falsandtru
    ContributorAuthor

    Hm, okay thanks!

  3. locked and limited conversation to collaborators on Jun 14, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Working as IntendedThe behavior described is the intended behavior; this is not a bug

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions