Skip to content

Wingman doesn't use synthesized evidence #1551

Closed
@isovector

Description

@isovector

The destruct tactic generates a pattern match, and pattern matching on GADT constructors can introduce evidence into scope. Right now, Wingman just ignores this evidence. #1549 lets us use this argument if the user wrote it, but right now the following will fail:

data X f = Monad f => X

fun1 :: X f -> a -> f a
fun1 = _

while

fun1 :: X f -> a -> f a
fun1 X = _

works just fine

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions