<div dir="ltr"><div><div><div><div><div><div>After individual FunBinds have been parsed, they are combined in getMonoBind.<br><br></div>In the process, all the original FunBind fun_id's bar one are discarded, including its location.<br><br></div>This causes a problem for source-to-source conversions of functions such as the following<br><br>(&&&  ) [] [] =  []<br>xs    &&&   [] =  xs<br>(  &&&  ) [] ys =  ys<br><br></div>Where there are compound RdrNames, and each has different spacing.<br><br></div>I am proposing to add a (Maybe (Located id)) to the Match datatype to deal with this.<br><br><br>data Match id body<br>  = Match<br></div><div>        Maybe (Located id) -- fun_id in subsequent function equations<br></div><div>        [LPat id]               -- The patterns<br>        (Maybe (LHsType id))    -- A type signature for the result of the match<br>                                -- Nothing after typechecking<br>        (GRHSs id body)<br><br></div>Is this a problem?<br><br></div>Alan<br></div>