Skip to content
  • Simon Peyton Jones's avatar
    Merge b737a4 into the 7.6 branch, curing Trac #7748 · 3ed9baf4
    Simon Peyton Jones authored
    The caching of goals in the constraint solver led to a
    equality-constraint loop even in a really simple program!
    
        commit b737a453
        Author: Simon Peyton Jones <simonpj@microsoft.com>
        Date:   Fri Aug 31 10:05:03 2012 +0100
    
        More simplifications to the constraint solver
    
        * inert_solved becomes dictionaries-only, inert_solved_dicts
    
        * inert_solved_dicts is used only to cache the result of uses
          of a top level instance declaration, just like inert_solved_funeqs
    
        * That in turn simplifies xCtFlavor and rewriteCtFlavor, because
          they no longer need a "should I cache" parameter.  (Moreover the
          settings for this parameter were very subtle; it's easy to get
          loops if you cache too much.  Caching only top-level instance
          uses is much safer, and eliminates all these subtle cases.)
    3ed9baf4