1. 13 Aug, 2004 1 commit
  2. 12 Aug, 2004 4 commits
  3. 10 Aug, 2004 1 commit
    • simonmar's avatar
      [project @ 2004-08-10 09:02:36 by simonmar] · c9a32c38
      simonmar authored
      Fix problem with inline foreign-call changes yesterday.  Foreign call
      args sometimes have to be modified using shimFCallArg - nowadays this
      is done at code generation time, whereas it used to be done at
      pretty-printing time.
      c9a32c38
  4. 09 Aug, 2004 2 commits
    • simonmar's avatar
      [project @ 2004-08-09 13:19:29 by simonmar] · 46d88d87
      simonmar authored
      Allow case-of-unsafe-ccall to compile to straight-line code, like it
      used to.  This has already been fixed on the backend-hacking-branch,
      but I'm doing it here so that it can be merged into the STABLE branch,
      where it will help to work around a bug.
      
      The bug is in CgExpr.lhs:primRetUnboxedTuple, which picks temporaries
      to assign the result of a ccall to.  The Cg monad doesn't have a uniq
      supply (in the HEAD), so we always pick the same temporaries.  This
      leads to clashes in complex function with multiple ccalls.  Again,
      this is already fixed in the backend-hacking-branch.  I don't see an
      easy fix for this bug.
      
      The compilation of case-of-unsafe-ccall doesn't suffer from this
      problem, and it will help work around some cases of the bug, so I'm
      going to merge this onto the STABLE branch after some testing.
      46d88d87
    • simonmar's avatar
      [project @ 2004-08-09 12:15:09 by simonmar] · dfd0efbe
      simonmar authored
      Put a "-- " before the location info, since the rest of the output
      looks like Haskell source.
      dfd0efbe
  5. 30 Jul, 2004 2 commits
  6. 28 Jul, 2004 2 commits
  7. 21 Jul, 2004 3 commits
  8. 19 Jul, 2004 2 commits
  9. 24 Jun, 2004 2 commits
  10. 23 Jun, 2004 1 commit
    • ross's avatar
      [project @ 2004-06-23 22:43:20 by ross] · 8000acbf
      ross authored
      arrow notation fixes (problems reported bu John Hughes):
      
      * allow an infixexp (exp0) to the left of -<.  This adds 4 more
        shift/reduce conflicts, because it makes if/lambda/let/case/proc
        before -< ambiguous.  This is the same sort of thing as
        "if x then y else z + 1", and as there shifting does the right thing.
      
      * described the grammar more precisely
      
      * fixed an example
      
      merge to STABLE
      8000acbf
  11. 22 Jun, 2004 2 commits
  12. 20 Jun, 2004 1 commit
  13. 02 Jun, 2004 3 commits
    • simonpj's avatar
      [project @ 2004-06-02 08:25:10 by simonpj] · 729a6eb1
      simonpj authored
      -----------------------------------------------
             Record whether data constructors are declared infix
      	-----------------------------------------------
      
      This allows us to generate the InfixC form in Template Hasekll.
      And for 'deriving' Read and Show, we now read and parse the infix
      form iff the constructor was declared infix, rather than just if
      it does not have the default fixity (as before).
      
      IfaceSyn changes slightly, so that IfaceConDecl can record their
      fixity, so there are trivial changes scattered about, and
      you'll need to recompile everything.
      
      In TysWiredIn I took the opportunity to simplify pcDataCon slightly,
      by eliminating the unused Theta argument.
      729a6eb1
    • simonpj's avatar
      [project @ 2004-06-02 08:23:43 by simonpj] · 5568d10f
      simonpj authored
      -------------------------------
      	Fix a grevious bug in DsMeta
      	which caused a seg fault
      	-------------------------------
      
      The bug was an incorrectly declared type for one of the Template
      Haskell construction functions in DsMeta (repRecCon, repRecUpd)
      and some associated jiggery pokery.
      
      -dcore-lint showed it up nicely, because the desugarer generated
      ill-typed code.
      
      DsMeta PrelNames TH.Lib
      5568d10f
    • simonpj's avatar
      [project @ 2004-06-02 08:09:58 by simonpj] · e25d4444
      simonpj authored
      Comments only
      e25d4444
  14. 01 Jun, 2004 1 commit
    • igloo's avatar
      [project @ 2004-06-01 23:22:30 by igloo] · 5ca86c67
      igloo authored
      Add missing functions to TH export list (mostly spotted by Duncan Coutts).
      
      Update TH test output.
      
      Add TH support for patterns with type signatures, and test for same
      (requested by Isaac Jones).
      
      Add TH support for pattern guards, and tests for same
      (requested by Isaac Jones).
      
      Add infix patterns to TH datatypes.
      
      Added Lift instances for 2- to 7-tuples (requested by Duncan Coutts).
      5ca86c67
  15. 27 May, 2004 2 commits
  16. 25 May, 2004 2 commits
    • simonpj's avatar
      [project @ 2004-05-25 09:06:38 by simonpj] · dc9ffb20
      simonpj authored
      -----------------------------------------------
      	Decent error on re-use of built-in syntax
      	-----------------------------------------------
      
      Make the renamer complain nicely on stupid stuff like
      
      	data T = []
      
      (except in the Prelude, of course!)
      dc9ffb20
    • simonpj's avatar
      [project @ 2004-05-25 08:09:37 by simonpj] · c6713d35
      simonpj authored
      -----------------------------------------------
      	Improve location info on unused-import warnings
      	-----------------------------------------------
      
      Improving the location involves plumbing the location of the import a bit
      more assiduously -- hence change to imp_mods in TcRnTypes
      c6713d35
  17. 24 May, 2004 2 commits
  18. 22 May, 2004 1 commit
    • panne's avatar
      [project @ 2004-05-22 12:27:38 by panne] · 4a41cd9a
      panne authored
      Reverse the order in which DLLs are loaded. This makes more sense in general and
      should fix the trouble with the broken OpenGL libs on Gentoo. This fix has been
      tested on x86 Linux, but reports from other platforms (WinDoze, MacOS X, ...)
      are highly welcome, dynamic linking is quite platform-specific and surprising
      things can happen from time to time...
      
      Merge to STABLE when tested on other platforms
      4a41cd9a
  19. 19 May, 2004 1 commit
  20. 12 May, 2004 2 commits
    • simonpj's avatar
      [project @ 2004-05-12 13:01:30 by simonpj] · 3d4c49bb
      simonpj authored
      Tidy-up only; behaviour unchanged
      3d4c49bb
    • simonpj's avatar
      [project @ 2004-05-12 12:55:12 by simonpj] · 825fba2a
      simonpj authored
      ---------------------------------
      	Another delicate fix to the way that the
      	Dreaded Monomorpism Restriction is handled
      	---------------------------------
      
           I think this should merge nicely to the STABLE branch
      
      
      In TcSimplify 1.130 I changed tcSimplifyRestricted (used for
      declarations that fall under the monomorphism restriction) to use Plan
      C.  Unfortunately, it later transpired that George Russel and Serge
      Mechveliani both made somewhat-dubious use of overlapping instances
      that conflicted with this change. Here's the example
      
        instance (HasBinary ty IO) => HasCodedValue ty
      
        foo :: HasCodedValue a => String -> IO a
      
        doDecodeIO :: HasCodedValue a => () -> () -> IO a
        doDecodeIO codedValue view = let { act = foo "" } in  act
      
      You might think this should work becuase the call to 'foo' in the last
      line gives rise to a constraint (HasCodedValue t), which can be
      satisfied by the type sig for doDecodeIO.  But the restricted binding
      act = ... calls tcSimplifyRestricted, and Plan C simplifies the
      constraint using the (rather bogus) instance declaration, and now we
      are stuffed.
      
      
      This commit implements Plan D, which is like plan B except that it does no
      improvement, and hence avoids plan B's flaw.  See the comments with Plan D.
      
      The only criticism one might make of Plan D is that it may sometimes quantify
      a restricted binding over "too few" type variables; but one can solve that
      by adding a type sig.  So this seems better than the very subtle problems
      with Plan C.
      
      All of this is very much at the margin: George and Sergey are pushing
      their luck.
      825fba2a
  21. 10 May, 2004 1 commit
  22. 09 May, 2004 1 commit
  23. 07 May, 2004 1 commit
    • simonpj's avatar
      [project @ 2004-05-07 14:06:45 by simonpj] · 250be0a3
      simonpj authored
      ---------------------------------
      	Make sure that GHCi loads all
      	necessary orphan-instance modules
      	---------------------------------
      
      When you do :m A, we need to load any orphan-instance modules
      below A.  That's easily done, but had been forgotten.
      
      	Do not merge to stable: the fix is different there
      250be0a3