Allow -- ^ Haddock syntax on record constructors
Original ticket is on Haddock Trac here which I'm opening here as it requires lexer/parser changes.
The idea is that given something like
-- | A tree with labeled internal nodes
data Tree =
Empty -- ^ Leaf
| Branch -- ^ Internal node
{ label :: a -- ^ Node label
, subtrees :: [Tree] -- ^ List of subtrees
}
we'd like it to parse as the user would expect instead of failing. We're currently forced to do something like
-- | A tree with labeled internal nodes
data Tree =
Empty -- ^ Leaf
| -- | Internal node
Branch
{ label :: a -- ^ Node label
, subtrees :: [Tree] -- ^ List of subtrees
}
which is quite ugly. I can't think of a reason why the first form wouldn't be allowed.
Trac metadata
| Trac field | Value |
|---|---|
| Version | 7.9 |
| Type | FeatureRequest |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | Compiler (Parser) |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | |
| Architecture |