Backporting srcLoc to the GHC 7.10 branch

Mateusz Kowalczyk fuuzetsu at fuuzetsu.co.uk
Mon Jul 6 16:39:51 UTC 2015


On 04/20/2015 05:29 PM, Niklas Hambüchen wrote:
> Hello everybody,
> 
> I'm glad to announce that I performed the suggested backporting as part of 
> my work for FP Complete!
> 
> With the help of Eric (thanks for your support in #ghc!) we now have this 
> patch for 7.10 and 7.8.
> 
> As promised, here are the commits:
> 
> * https://github.com/nh2/ghc/commits/ghc-7.10.1-release-srcloc-ip
> * https://github.com/nh2/ghc/commits/ghc-7.8.4-release-srcloc-ip
> 
> You can see in the history that I only needed to cherry-pick "Make the 
> location in TcLclEnv and CtLoc into a RealSrcSpan" as a dependent commit, 
> so the changes beyond the actual feature are fairly minimal.
> 
> For 7.8, I had to do a little more cleanup, see the "Use wrapIPTc instead 
> of coercionToTcCoercion on wrapIP" commit.
> 
> Regarding the commit of the feature itself, I had to do quite some merge 
> resolution, especially due to the (lack of) the -fwarn-redundant-
> constraints patch https://github.com/nh2/ghc/commit/32973bf3 (alias "but it 
> was Christmas, so I did some recreational programming that went much 
> further").
> However, the type checker had a strong opinion of what the right merge 
> decision was, at least for the 7.10 backport; for 7.8 there was an 
> ambiguity (whether to return `Nothing` or `Just` in `interactDict`), which 
> was resolved with Eric's help.
> 
> Please be invited to review the two commits.
> 
> We would like to make 7.8 and 7.10 binaries with this feature available as 
> well, and will do so after getting a review!
> 
> Niklas
> 
> _______________________________________________
> ghc-devs mailing list
> ghc-devs at haskell.org
> http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
> 

Hi all,

In light of how small the actual backported changes are, I wonder if it
would be possible to include it in 7.10.2 (or .3 if we're doing that). I
know that at first it was rejected but it was rejected before the diff
existed. In practice, the only API change was two SrcSpans changing into
RealSrcSpans inside the typechecker. Seems like a small price,
considering two commercial companies that use Haskell (FP Complete and
I'm here on behalf of Zalora's internal team) would love to see it.

I know SPJ suggested perhaps lobbying for early 7.12 instead but how
early could we possibly lobby for it considering 7.10.2 is not even out
of the door yet?

Niklas, do you also have a diff on top of 7.10.2 (rc-1/2)? I'd be
interested in seeing that too.

-- 
Mateusz K.


More information about the ghc-devs mailing list