Bad error message: varying arguments
A function definition like
f :: Maybe () -> Char
f Nothing = 'a'
f Just () = 'b'
yields the error message
Varying number of arguments for function `f'
under 6.4.1 (pointing to the line with Nothing as containing the error). The following error message would be easier to understand for beginners (pointing to the line with Just):
The type signature for f specifies that the function should take one argument, but you have given it two arguments.
Trac metadata
Trac field | Value |
---|---|
Version | 6.4.1 |
Type | FeatureRequest |
TypeOfFailure | OtherFailure |
Priority | normal |
Resolution | Unresolved |
Component | Compiler (Type checker) |
Test case | |
Differential revisions | |
BlockedBy | |
Related | |
Blocking | |
CC | |
Operating system | Unknown |
Architecture | Unknown |