data X = X | Y
ok :: X -> X -> X
ok x@(X) _ = X
err1 :: X -> X -> X
err1 x@X _ = X -- X was given 1 argument but expected 0 arguments
err2 :: X -> X -> X
err2 x@X _ = X -- argument list differs
err2 Y _ = Y
@natefaubion: Yeah, I’d consider that a bug
it treats constructor (de)application as higher precedence than @, which is wrong (edited)
@natefaubion: Yeah, I’d consider that a bug
it treats constructor (de)application as higher precedence than
@, which is wrong (edited)