cvs commit: fptools/ghc/compiler/typecheck TcHsSyn.lhs TcMType.lhs TcRnDriver.lhs TcRules.lhs

Simon Peyton Jones simonpj@glass.cse.ogi.edu
Tue, 17 Sep 2002 06:00:15 -0700


simonpj     2002/09/17 06:00:15 PDT

  Modified files:
    ghc/compiler/typecheck TcHsSyn.lhs TcMType.lhs TcRnDriver.lhs 
                           TcRules.lhs 
  Log:
  	--------------------------------------
  	Another attempt to make unbound type
  	variables in RULES work right
  	--------------------------------------
  
  Sigh.  I'm trying to find the unbound type variables on the LHS of a
  RULE.  I thought I could just gather free vars, but that does not work
  well on an un-zonked LHS, because a big lambda might bind a type variable
  that looks different (pre-zonking) but isn't really.
  
  Oh well, back to plan B which is more work but more robust.
  
  Now the zonking phase (in TcHsSyn) arranges to zonk types in a different
  way (zonkTypeCollecting) on a rule LHS than in ordinary expressions
  (zonkTypeZapping).  This is less dependent on the exact form of the LHS
  (good) but involves another mutable variable (not unclean, but it's sad
  to have to admit that mutable variables do sometimes allow you to make
  non-invasive changes).
  
  Revision  Changes    Path
  1.79      +195 -60   fptools/ghc/compiler/typecheck/TcHsSyn.lhs
  1.39      +4 -70     fptools/ghc/compiler/typecheck/TcMType.lhs
  1.3       +2 -2      fptools/ghc/compiler/typecheck/TcRnDriver.lhs
  1.41      +2 -46     fptools/ghc/compiler/typecheck/TcRules.lhs
_______________________________________________
Cvs-ghc mailing list
Cvs-ghc@haskell.org
http://www.haskell.org/mailman/listinfo/cvs-ghc