[GHC] #9672: Error message too long (full case statement printed)
GHC
ghc-devs at haskell.org
Mon Oct 13 07:51:30 UTC 2014
#9672: Error message too long (full case statement printed)
-------------------------------------+-------------------------------------
Reporter: | Owner:
andreas.abel | Status: new
Type: bug | Milestone:
Priority: normal | Version: 7.8.3
Component: Compiler | Keywords:
(Type checker) | Architecture: Unknown/Multiple
Resolution: | Difficulty: Easy (less than 1
Operating System: | hour)
Unknown/Multiple | Blocked By:
Type of failure: Other | Related Tickets:
Test Case: |
Blocking: |
Differential Revisions: |
-------------------------------------+-------------------------------------
Comment (by simonpj):
Sadly error messages are (ultimately) `Pretty.Doc`s, and we currently lack
a way to ask how long they are. Actually that might not be a hard thing
to add; one could simply add up the length of the strings in the `Doc`
(which is a data structure. That would not tell you how much white space
would be printed (you'd have to render it for that), but it would tell you
how much payload there was.
There is also a currently-fixed constant `TcRnMonad.mAX_CONTEXTS` which
says how many layers of "In ..." to print. That could easily be made into
a `DynFlag`.
So there you are: two fairly easy-to-implement ideas. The relevant
function is `TcRnMonad.add_err_tcm`. Anyone want to try this?
Simon
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/9672#comment:3>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list