This looks pretty good to me. What's "in progress" about it?

I would want to see a comment on the declaration for HsArgPar with an example, 
and a test case.

Thanks!
Richard

> On Jun 7, 2018, at 6:38 AM, Zubin Duggal <zubin.dug...@gmail.com> wrote:
> 
> Hello all,
> 
> The typechecker doesn't preserve parenthesis that occur at the head of 
> applications.
> 
> This results in some weird SrcSpans in the TypecheckedSource
> 
> For example, given code
> 
> foo a b c = (bar a) b c
> 
> The typechecker will emit an HsApp with head spanning over `bar a) b` and 
> tail spanning over `c`.
> Notice that the opening parenthesis is not included.
> 
> On the other hand, the renamer will generate the expected SrcSpans that 
> always include both parenthesis, or neither. This becomes an issue when you 
> want to associate RenamedSource with its corresponding TypecheckedSource, as 
> the SrcSpans no longer match and overlap partially.
> 
> This occurs due to this line in TcExpr.hs
> 
> tcApp m_herald (L _ (HsPar _ fun)) args res_ty
>   = tcApp m_herald fun args res_ty
> 
> I have a work in progress fix here: 
> https://github.com/wz1000/ghc/commit/3b6db5a35dc8677a7187e349a85ffd51f452452a 
> <https://github.com/wz1000/ghc/commit/3b6db5a35dc8677a7187e349a85ffd51f452452a>
> 
> I have also created a ticket on trac: 
> https://ghc.haskell.org/trac/ghc/ticket/15242#ticket 
> <https://ghc.haskell.org/trac/ghc/ticket/15242#ticket>
> _______________________________________________
> ghc-devs mailing list
> ghc-devs@haskell.org
> http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs

_______________________________________________
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs

Reply via email to