On Mon, Mar 17, 2014 at 2:45 PM, Simon Peyton Jones
<[email protected]>wrote:

> | The one interesting case is T4306 which fails because the generated name
> | $wupd is regarded as an infix name, and thus with my new code is
> | rendered as
> |
> |    ($wupd) :: GHC.Prim.Double# -> GHC.Prim.Double#
> |
> | instead of the old
> |
> |    $wupd :: GHC.Prim.Double# -> GHC.Prim.Double#
>
> I think it'd also be ok just to accept this output too. These "$wxx" names
> are generated by GHC and won't show up in user output.  It doesn't much
> matter displaying them in parens.
>

Do they show up in -ddump-simpl? It would be nice to keep that output as
readable as possible, as there are quite a few of us that read it on a
regular basis.


> But changing isLexVarSym is probably equally fine too.  I think (worth a
> check) that it's only called for display purposes, and not in any
> performance-critical parts.
>
> Whichever you choose, add a Note with isLexVarSym to explain the issue and
> the choice.


Does that mean that any operator that starts with $ will now not be
considered infix for printing purposes?

-- Johan
_______________________________________________
ghc-devs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/ghc-devs

Reply via email to