simonpj     2004/12/20 09:17:11 PST

  Modified files:
    ghc/compiler/basicTypes VarEnv.lhs 
    ghc/compiler/coreSyn CoreLint.lhs CoreUtils.lhs Subst.lhs 
    ghc/compiler/deSugar DsForeign.lhs 
    ghc/compiler/prelude PrelRules.lhs 
    ghc/compiler/simplCore Simplify.lhs 
    ghc/compiler/specialise Rules.lhs SpecConstr.lhs 
    ghc/compiler/stranal DmdAnal.lhs 
    ghc/compiler/typecheck TcBinds.lhs TcSimplify.lhs TcType.lhs 
    ghc/compiler/types   Type.lhs Unify.lhs 
    ghc/compiler/utils   Maybes.lhs Util.lhs 
  Log:
        --------------------------------
        Deal properly with dual-renaming
        --------------------------------
  
  When comparing types and terms, and during matching, we are faced
  with 
        \x.e1   ~   \y.e2
  
  There are many pitfalls here, and GHC has never done the job properly.
  Now, at last it does, using a new abstraction VarEnv.RnEnv2.  See
  comments there for how it works.
  
  There are lots of consequential changes to use the new stuff, especially
  in 
        types/Type (type comparison), 
        types/Unify (matching on types)
        coreSyn/CoreUtils (equality on expressions), 
        specialise/Rules (matching).
  
  I'm not 100% certain of that I've covered all the bases, so let me
  know if something unexpected happens after you update.  Maybe wait until
  a nightly build has worked ok first!
  
  Revision  Changes    Path
  1.16      +120 -6    fptools/ghc/compiler/basicTypes/VarEnv.lhs
  1.82      +2 -2      fptools/ghc/compiler/coreSyn/CoreLint.lhs
  1.130     +48 -54    fptools/ghc/compiler/coreSyn/CoreUtils.lhs
  1.45      +3 -2      fptools/ghc/compiler/coreSyn/Subst.lhs
  1.85      +3 -3      fptools/ghc/compiler/deSugar/DsForeign.lhs
  1.40      +2 -2      fptools/ghc/compiler/prelude/PrelRules.lhs
  1.153     +2 -2      fptools/ghc/compiler/simplCore/Simplify.lhs
  1.43      +176 -257  fptools/ghc/compiler/specialise/Rules.lhs
  1.22      +2 -2      fptools/ghc/compiler/specialise/SpecConstr.lhs
  1.51      +2 -2      fptools/ghc/compiler/stranal/DmdAnal.lhs
  1.130     +4 -6      fptools/ghc/compiler/typecheck/TcBinds.lhs
  1.141     +1 -1      fptools/ghc/compiler/typecheck/TcSimplify.lhs
  1.113     +6 -92     fptools/ghc/compiler/typecheck/TcType.lhs
  1.127     +120 -29   fptools/ghc/compiler/types/Type.lhs
  1.16      +204 -117  fptools/ghc/compiler/types/Unify.lhs
  1.25      +10 -19    fptools/ghc/compiler/utils/Maybes.lhs
  1.70      +12 -6     fptools/ghc/compiler/utils/Util.lhs
_______________________________________________
Cvs-ghc mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/cvs-ghc

Reply via email to