1. 15 Sep, 2005 2 commits
  2. 14 Sep, 2005 2 commits
  3. 13 Sep, 2005 3 commits
  4. 12 Sep, 2005 5 commits
  5. 11 Sep, 2005 2 commits
  6. 05 Sep, 2005 2 commits
    • simonpj's avatar
      [project @ 2005-09-05 15:28:07 by simonpj] · 6ac7eb25
      simonpj authored
      GHC claims to lift the H98 restriction that a class method must not
      add a constraint on the class type variable (manual "Class
      method types").  But the validity check was incorrect in the case
      where the class method had a forall.  E.g.
      	class C a where
      	  op :: forall b. (Show b, Show a) => ...
      This commit fixes the bug.
      tcrun037, and tcfail149, test with and without -fglasgow-exts.
    • ross's avatar
      [project @ 2005-09-05 08:22:23 by ross] · 478f7aa5
      ross authored
      add a newline after error messages
  7. 02 Sep, 2005 1 commit
  8. 24 Aug, 2005 1 commit
  9. 22 Aug, 2005 1 commit
  10. 19 Aug, 2005 1 commit
  11. 18 Aug, 2005 3 commits
    • krasimir's avatar
      [project @ 2005-08-18 20:32:46 by krasimir] · e0963b10
      krasimir authored
      add pprInstanceHdr function. It is analogous to pprTyThingHdr and prints the
      instance but without the "-- Defined at ...." comment. The function is used in
      VStudio to populate the ClassView tree.
    • simonpj's avatar
      [project @ 2005-08-18 10:25:46 by simonpj] · 70a2631a
      simonpj authored
      1. Remove redundant coerces.  Something that started life as
      	coerce a b <expr>
         might change to
      	coerct Int Int <expr>
         after the types a,b are instantiated.
      2. Get rid of the "bad eta expand" message. It can happen entirely legitimately.
         See comments in CoreUtils with eta_expand.
    • simonpj's avatar
      [project @ 2005-08-18 10:02:54 by simonpj] · 67e7de3d
      simonpj authored
      Make the forkM failure fail more tidily.  Interface-file inconsistencies
      give rise to failures in the IfM monad.  An error message is printed, but
      up to now we've also said "The impossible happened, must be a GHC bug".
      That's not true, though, it could just be messed up interface files.
      So this commit still makes the compiler halt, but in a tidier, less
      self-accusatory way.
      Still to come: when original names in interface files mention the
      package Id too, the error will become clearer still.
      	MERGE to STABLE
  12. 12 Aug, 2005 6 commits
    • simonpj's avatar
      [project @ 2005-08-12 14:43:04 by simonpj] · fc0c93a9
      simonpj authored
      Fix typos
    • simonmar's avatar
      [project @ 2005-08-12 12:36:59 by simonmar] · 0066307c
      simonmar authored
      Use a better string hash: the previous one only took into account 3
      characters from the string (0, N/2, N), leading to some bad collisions
      with lots of similar strings (eg. local names generated by the
      compiler).  Worse, it had a bug in the N==2 case, which meant that it
      ignored one of the characters in the string completely.
      We now traverse the whole string, using the algorithm from Data.Hash
      which seems to work reasonably well.
      For good measure, I quadrupled the size of the hash table too, from
      1000 to 4000 entries.
    • simonmar's avatar
      [project @ 2005-08-12 10:47:48 by simonmar] · 3f123464
      simonmar authored
      inline unsafePerformIO for eqStrPrefix/eqStrPrefixBA.  These functions
      are fairly time-critical pieces of the FastString system, and using
      unsafePerformIO here was causing unnecessary allocation.
    • simonmar's avatar
      [project @ 2005-08-12 10:45:36 by simonmar] · 196ccd21
      simonmar authored
      More inlining changes from SimonPJ & me: The Plan is to avoid relying
      on knowledge of OneOcc occurrences after postInlineUnconditionally, so
      we now attempt to make use of OneOcc as far as possible in in
      pre/postInlineUnconditionally rather than the call site.  Plenty of
      comments in the code with more details.
      This change almost always improves performance on nofib; we have one
      program that goes slower, which we'll investigate in due course.
    • simonpj's avatar
      [project @ 2005-08-12 08:32:16 by simonpj] · 22df1e2a
      simonpj authored
      Grr: another wibble to duplicate signature detection
    • simonmar's avatar
      [project @ 2005-08-12 08:10:50 by simonmar] · 2c88170c
      simonmar authored
      exprIsCheap: fix a bug whereby an over-applied ClassOp or RecordSel
      would be considered cheap.
  13. 11 Aug, 2005 7 commits
  14. 10 Aug, 2005 4 commits
    • simonpj's avatar
      [project @ 2005-08-10 11:09:05 by simonpj] · 70cfef77
      simonpj authored
      Rename exprIsValue to exprIsHNF, which is more accurate
    • simonpj's avatar
      [project @ 2005-08-10 11:05:06 by simonpj] · e3a4d6c3
      simonpj authored
      It turned out that doing all binding dependency analysis in the typechecker
      meant that the renamer's unused-binding error messages got worse.  So now
      I've put the first dep anal back into the renamer, while the second (which
      is specific to type checking) remains in the type checker.
      I've also made the pretty printer sort the decls back into source order
      before printing them (except with -dppr-debug).
      Fixes rn041.
    • simonmar's avatar
      [project @ 2005-08-10 10:01:37 by simonmar] · 31578e22
      simonmar authored
      -Wall cleaning and dead code removal
    • simonpj's avatar
      [project @ 2005-08-10 07:49:36 by simonpj] · 6a15e98b
      simonpj authored
      Fix a bug caused by the change in representation for NPats;
      the pattern-overlap checker didn't know about the change,
      and so treated +1 and -1 as equal...
      	MERGE to STABLE