Skip to content

fix overload fixpoint resolution #36

@dylex

Description

@dylex

As of commit af25439, overload fixpoint resolution does not properly deal with mutually recursive functions. The following fails:

f () = h (Type (f ()))

h :: Type Void -> Int
h Void = g ()

h :: Type Int -> Int
h Int = 0

g () = f ()

_ = Type (f ()) :: Type Int
_ = Type (g ()) :: Type Int

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions