<div dir="ltr">Sorry about this.   It would appear that I am not allowed to push to the `haddock` repo, so I've attached a patch, for someone with permissions to apply.<div><br></div><div>Also, could I be given permissions to modify haddock, since GHC and haddock are closely related changes like the one I made often need to be propagated in both.</div>
<div>-Iavor</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Jun 30, 2014 at 1:23 AM, Herbert Valerio Riedel <span dir="ltr"><<a href="mailto:hvriedel@gmail.com" target="_blank">hvriedel@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
<br>
Fyi, this changeset seems to have broken ./validate:<br>
<br>
  utils/haddock/src/Haddock/Interface/Rename.hs:449:11: Warning:<br>
      Fields of ‘ClsInstDecl’ not initialised: cid_overlap_mode<br>
      In the first argument of ‘return’, namely<br>
        ‘(ClsInstDecl<br>
            {cid_poly_ty = ltype', cid_binds = emptyBag, cid_sigs = [],<br>
             cid_tyfam_insts = lATs', cid_datafam_insts = lADTs'})’<br>
      In a stmt of a 'do' block:<br>
        return<br>
          (ClsInstDecl<br>
             {cid_poly_ty = ltype', cid_binds = emptyBag, cid_sigs = [],<br>
              cid_tyfam_insts = lATs', cid_datafam_insts = lADTs'})<br>
      In the expression:<br>
        do { ltype' <- renameLType ltype;<br>
             lATs' <- mapM (mapM renameTyFamInstD) lATs;<br>
             lADTs' <- mapM (mapM renameDataFamInstD) lADTs;<br>
             return<br>
               (ClsInstDecl<br>
                  {cid_poly_ty = ltype', cid_binds = emptyBag, cid_sigs = [],<br>
                   cid_tyfam_insts = lATs', cid_datafam_insts = lADTs'}) }<br>
<br>
  <no location info>:<br>
  Failing due to -Werror.<br>
  make[1]: *** [utils/haddock/dist/build/Haddock/Interface/Rename.dyn_o] Error 1<br>
  make: *** [all] Error 2<br>
<div class="HOEnZb"><div class="h5"><br>
<br>
On 2014-06-30 at 02:37:52 +0200, git-4Dsf34iY/<a href="mailto:NkouOHNgZ69ag@public.gmane.org">NkouOHNgZ69ag@public.gmane.org</a> wrote:<br>
> Repository : ssh://<a href="http://git@git.haskell.org/ghc" target="_blank">git@git.haskell.org/ghc</a><br>
><br>
> On branch  : master<br>
> Link       : <a href="http://ghc.haskell.org/trac/ghc/changeset/6290eeadf61a40f2eb08d0fd7ef1f3b7f9804178/ghc" target="_blank">http://ghc.haskell.org/trac/ghc/changeset/6290eeadf61a40f2eb08d0fd7ef1f3b7f9804178/ghc</a><br>

><br>
>>---------------------------------------------------------------<br>
><br>
> commit 6290eeadf61a40f2eb08d0fd7ef1f3b7f9804178<br>
> Author: Iavor S. Diatchki <<a href="mailto:iavor.diatchki@gmail.com">iavor.diatchki@gmail.com</a>><br>
> Date:   Sun Jun 29 17:22:16 2014 -0700<br>
><br>
>     Overlapable pragmas for individual instances (#9242)<br>
><br>
>     Programmers may provide a pragma immediately after the `instance` keyword<br>
>     to control the overlap/incoherence behavior for individual instances.<br>
>     For example:<br>
><br>
>         instance {-# OVERLAP #-} C a where ...<br>
><br>
>     I chose this notation, rather than the other two outlined in the ticket<br>
>     for these reasons:<br>
><br>
>        1. Having the pragma after the type looks odd, I think.<br>
>        2. Having the pragma after there `where` does not work for<br>
>            stand-alone derived instances<br>
><br>
>     I have implemented 3 pragams:<br>
><br>
>        1. NO_OVERLAP<br>
>        2. OVERLAP<br>
>        3. INCOHERENT<br>
><br>
>     These correspond directly to the internal modes currently supported by<br>
>     GHC.  If a pragma is specified, it will be used no matter what flags are<br>
>     turned on.   For example, putting `NO_OVERLAP` on an instance will mark<br>
>     it as non-overlapping, even if `OVERLAPPIN_INSTANCES` is turned on for the<br>
>     module.<br>
><br>
><br>
>>---------------------------------------------------------------<br>
><br>
> 6290eeadf61a40f2eb08d0fd7ef1f3b7f9804178<br>
>  compiler/hsSyn/Convert.lhs        |  2 +-<br>
>  compiler/hsSyn/HsDecls.lhs        | 24 ++++++++++++++++----<br>
>  compiler/parser/Lexer.x           |  6 +++++<br>
>  compiler/parser/Parser.y.pp       | 21 +++++++++++++-----<br>
>  compiler/rename/RnSource.lhs      |  7 ++++--<br>
>  compiler/typecheck/TcDeriv.lhs    | 46 +++++++++++++++++++++++++--------------<br>
>  compiler/typecheck/TcInstDcls.lhs |  5 ++++-<br>
>  7 files changed, 82 insertions(+), 29 deletions(-)<br>
><br>
> Diff suppressed because of size. To see it, use:<br>
><br>
>     git diff-tree --root --patch-with-stat --no-color --find-copies-harder --ignore-space-at-eol --cc 6290eeadf61a40f2eb08d0fd7ef1f3b7f9804178<br>
<br>
</div></div><span class="HOEnZb"><font color="#888888">--<br>
"Elegance is not optional" -- Richard O'Keefe<br>
</font></span></blockquote></div><br></div>