Various error messages have inaccurate source locations
Some error messages lack source location information, or have inaccurate locations. Here are the ones we know about:
- Should point to the import decl:
ShowFunctions.hs:1:0 Warning: Module `Text.Show.Functions' is imported, but nothing from it is used
- Should point to the instance header:
mod41.hs:3:0: Illegal instance declaration for `Eq (Either a a)' (The instance type must be of form (T a b c)
- Should point to 'deriving *Eq*', not the tycon:
tcfail046.hs:9:8: No instance for `Eq (Pid -> Time -> Message a -> (MessList a, Continuation a ))' When deriving the `Eq' instance for type `Continuation'
- check_tau_type doesn't have location info?
tcfail100.hs:7:0: Type synonym `A' should have 1 argument, but has been given 0 In the type synonym declaration for `B'
- Location in LHsModule from the parser should really span the whole file, rather than a point span at (1,0).
- read016: should be the lhs only?
- tcfail044: should be the instance head only.