cvs commit: fptools/ghc/compiler/typecheck TcMonad.lhs TcSimplify.lhs fptools/ghc/compiler/types FunDeps.lhs Unify.lhs

Simon Peyton Jones simonpj@glass.cse.ogi.edu
Tue, 30 Jan 2001 01:53:12 -0800


simonpj     2001/01/30 01:53:12 PST

  Modified files:
    ghc/compiler/typecheck TcMonad.lhs TcSimplify.lhs 
    ghc/compiler/types   FunDeps.lhs Unify.lhs 
  Log:
  More on functional dependencies
  
  My last commit allowed this:
  
  	instance C a b => C [a] [b] where ...
  
  if we have
  
  	class C a b | a -> b
  
  This commit completes the change, by making the 
  improvement stages improve only the 'shape' of the second
  argument of C.  
  
  I also had to change the iteration in TcSimplify -- see
  the comments in TcSimplify.inferLoop.
  
  
  
  Revision  Changes    Path
  1.57      +3 -1      fptools/ghc/compiler/typecheck/TcMonad.lhs
  1.66      +53 -24    fptools/ghc/compiler/typecheck/TcSimplify.lhs
  1.12      +22 -10    fptools/ghc/compiler/types/FunDeps.lhs
  1.12      +10 -1     fptools/ghc/compiler/types/Unify.lhs