simonpj 2002/11/28 09:17:45 PST
Modified files:
ghc/compiler/typecheck Inst.lhs TcBinds.lhs TcEnv.lhs
TcMType.lhs TcMonoType.lhs
TcRnDriver.lhs TcRnMonad.lhs
TcRnTypes.lhs TcSimplify.lhs
TcUnify.lhs
Log:
-------------------------------
A day's work to improve error messages
-------------------------------
1. Indicate when the cause of the error is likely to be the monomorpism
restriction, and identify the offending variables. This involves
mainly tcSimplifyTop and its error generation.
2. Produce much better kind error messages. No more
../alonzo/DiGraph.hs:40:
Couldn't match `* -> *' against `Type bx'
Expected kind: * -> *
Inferred kind: Type bx
When checking that `DiGraph n' is a type
It took a surprisingly long time to get the details right.
Revision Changes Path
1.108 +8 -5 fptools/ghc/compiler/typecheck/Inst.lhs
1.111 +12 -13 fptools/ghc/compiler/typecheck/TcBinds.lhs
1.113 +63 -3 fptools/ghc/compiler/typecheck/TcEnv.lhs
1.43 +6 -6 fptools/ghc/compiler/typecheck/TcMType.lhs
1.106 +120 -71 fptools/ghc/compiler/typecheck/TcMonoType.lhs
1.17 +7 -3 fptools/ghc/compiler/typecheck/TcRnDriver.lhs
1.11 +7 -7 fptools/ghc/compiler/typecheck/TcRnMonad.lhs
1.15 +12 -3 fptools/ghc/compiler/typecheck/TcRnTypes.lhs
1.109 +86 -44 fptools/ghc/compiler/typecheck/TcSimplify.lhs
1.40 +30 -70 fptools/ghc/compiler/typecheck/TcUnify.lhs
|