1. 22 Jul, 2009 1 commit
  2. 19 Jul, 2009 1 commit
  3. 22 Jul, 2009 1 commit
  4. 20 Jul, 2009 2 commits
    • Simon Marlow's avatar
      remove unused $(HscIfaceFileVersion) · 872bd77d
      Simon Marlow authored
      872bd77d
    • Simon Marlow's avatar
      Choose external names more predictably · fa9f1e20
      Simon Marlow authored
      Now, for a compiler-generated binding "x", if "x" is referred to by
      the exported "f", then it will be named "f_x" rather than something
      like "x23".  This means that hopefully
      
        - compilation will more often product the same results given the
          same input (the choice of names is not dependent on the
          non-deterministic order of bindings within the compiler).
      
        - less recompilation will be necessary after making changes
      
        - navigating Core might be a bit easier.
      
      unfortunately, compilation with -O still does not consistently produce
      the same ABI.  The simplifier sometimes does different things,
      apparently.
      
      Names will be longer, but I can't see a way around that.
      fa9f1e20
  5. 17 Jul, 2009 1 commit
  6. 16 Jul, 2009 1 commit
  7. 22 Jul, 2009 1 commit
    • simonpj@microsoft.com's avatar
      Take account of GADTs when reporting patterm-match overlap · 5b494344
      simonpj@microsoft.com authored
      When matching against a GADT, some of the constructors may be impossible.
      For example
      	data T a where
                T1 :: T Int
                T2 :: T Bool
                T3 :: T a
      
              f :: T Int -> Int
              f T1 = 3
              f T3 = 4
      
      Here, does not have any missing cases, despite omittting T2, because
      T2 :: T Bool.
      
      This patch teaches the overlap checker about GADTs, which happily
      turned out to be rather easy even though the overlap checker needs
      a serious rewrite.
      5b494344
  8. 20 Jul, 2009 1 commit
  9. 19 Jul, 2009 2 commits
  10. 18 Jul, 2009 7 commits
  11. 17 Jul, 2009 5 commits
  12. 24 Jun, 2009 1 commit
  13. 26 Jun, 2009 1 commit
  14. 18 Jun, 2009 1 commit
  15. 17 Jul, 2009 1 commit
  16. 16 Jul, 2009 7 commits
  17. 14 Jul, 2009 2 commits
  18. 11 Jul, 2009 1 commit
  19. 13 Jul, 2009 1 commit
  20. 11 Jul, 2009 1 commit
  21. 14 Jul, 2009 1 commit