
#8576: Improve deriving error messages --------------------------------------------+------------------------------ Reporter: nomeata | Owner: nomeata Type: feature request | Status: new Priority: low | Milestone: Component: Compiler (Type checker) | Version: Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: None/Unknown | Unknown/Multiple Test Case: | Difficulty: Unknown Blocking: | Blocked By: | Related Tickets: --------------------------------------------+------------------------------ Comment (by nomeata): Theoretically possible, but would require a decent amount of code reshuffling: The `CtOrigin` is currently created in `derivTyData` (and others), and passed down to `mkEqnHelp` to `mkDataTypeEqn` to `mk_data_eqn`, where the `inferred_constraints`, which are obtained from `inferConstraints` as a list, put together with the `CtOrigin` and put into one `EarlyDerivSpec`, which does not support different `CtOrigin`s for different constraints. I do like fancy error messages, but the code (passing around plain `[Type]` for the constraint) has some elegance. Is this feature worth uprooting that? -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8576#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler