[commit: ghc] master: Numerous small changes to the constraint solver (9c0a6bb)

Simon Peyton Jones simonpj at microsoft.com
Mon Jul 23 18:29:32 CEST 2012


Repository : ssh://darcs.haskell.org//srv/darcs/ghc

On branch  : master

http://hackage.haskell.org/trac/ghc/changeset/9c0a6bbb0194f65cd62e48936c0c00fc4888eef3

>---------------------------------------------------------------

commit 9c0a6bbb0194f65cd62e48936c0c00fc4888eef3
Author: Simon Peyton Jones <simonpj at microsoft.com>
Date:   Mon Jul 23 17:05:59 2012 +0100

    Numerous small changes to the constraint solver
    
    The main thing is that we now keep unsolved Derived constraints in the
    wc_flats of a WantedConstraints, rather than discarding them each time.
    This actually fixes a poential (admittedly obscure) bug, when we currently
    discard a superclass constraint, and may never re-generate it, and may
    thereby miss a functional dependency.
    
    Instead, reportErrors filters out Derived constraints that we don't want
    to report.
    
    The other changes are all small refactorings following our walk-through.

 compiler/typecheck/TcErrors.lhs   |   53 ++++++++++-
 compiler/typecheck/TcHsSyn.lhs    |   50 ++++------
 compiler/typecheck/TcInteract.lhs |  192 +++++++++++++------------------------
 compiler/typecheck/TcRnTypes.lhs  |   40 ++++----
 compiler/typecheck/TcSMonad.lhs   |  135 ++++++++++++--------------
 compiler/typecheck/TcSimplify.lhs |   86 +----------------
 6 files changed, 226 insertions(+), 330 deletions(-)


Diff suppressed because of size. To see it, use:

    git show 9c0a6bbb0194f65cd62e48936c0c00fc4888eef3



More information about the Cvs-ghc mailing list