
#8607: Invalid location reported for type constructors -------------------------------------+------------------------------------ Reporter: edsko | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 7.7 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Unknown/Multiple Type of failure: None/Unknown | Difficulty: Unknown Test Case: | Blocked By: Blocking: | Related Tickets: -------------------------------------+------------------------------------ Comment (by goldfire): Yes, I see what you're saying much better now. But, it still doesn't seem to quite correspond with what's going on in Simon's original change. That commit (1745779...) seems to change only the location in the `Located` bit, not the one in the `nameSrcSpan`. Oh, it's all suddenly clear. Simon's commit was overzealous. It turns out that the location stored in the `Located` bit in a `tcdLName` seems to be ignored in the validity checker -- it's only the location in the `nameSrcSpan` that does any work. So, the changes Simon made to !RdrHsSyn were totally unnecessary to correspond to the refactoring in !TcTyClsDecls. The solution is dead easy: I can just revert the changes in !RdrHsSyn and revert the corresponding changes in the testsuite, while keeping the refactoring in !TcTyClsDecls, which was the whole point to begin with. Have to run now, but will do this later today. Thanks for pointing me in this direction! -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8607#comment:12 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler