Skip to content

Inlining and Desugar passes should preserve type information #32

@HuwCampbell

Description

@HuwCampbell

Currently we re-type check after inlining and desugaring.

This is fine expect for one edge case.

doubleDouble : Double -> Double
doubleDouble x = x * 2

feature incorrect =
  from something in doubleDouble 4

After inlining, this will type check as Num a => a and the defaulting rules will
make it an Int instead of a Double.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions