1. 05 Feb, 2008 1 commit
  2. 17 Jan, 2008 1 commit
    • Isaac Dupree's avatar
      lots of portability changes (#1405) · 206b4dec
      Isaac Dupree authored
      re-recording to avoid new conflicts was too hard, so I just put it
      all in one big patch :-(  (besides, some of the changes depended on
      each other.)  Here are what the component patches were:
      Fri Dec 28 11:02:55 EST 2007  Isaac Dupree <id@isaac.cedarswampstudios.org>
        * document BreakArray better
      Fri Dec 28 11:39:22 EST 2007  Isaac Dupree <id@isaac.cedarswampstudios.org>
        * properly ifdef BreakArray for GHCI
      Fri Jan  4 13:50:41 EST 2008  Isaac Dupree <id@isaac.cedarswampstudios.org>
        * change ifs on __GLASGOW_HASKELL__ to account for... (#1405)
        for it not being defined. I assume it being undefined implies
        a compiler with relatively modern libraries but without most
        unportable glasgow extensions.
      Fri Jan  4 14:21:21 EST 2008  Isaac Dupree <id@isaac.cedarswampstudios.org>
        * MyEither-->EitherString to allow Haskell98 instance
      Fri Jan  4 16:13:29 EST 2008  Isaac Dupree <id@isaac.cedarswampstudios.org>
        * re-portabilize Pretty, and corresponding changes
      Fri Jan  4 17:19:55 EST 2008  Isaac Dupree <id@isaac.cedarswampstudios.org>
        * Augment FastTypes to be much more complete
      Fri Jan  4 20:14:19 EST 2008  Isaac Dupree <id@isaac.cedarswampstudios.org>
        * use FastFunctions, cleanup FastString slightly
      Fri Jan  4 21:00:22 EST 2008  Isaac Dupree <id@isaac.cedarswampstudios.org>
        * Massive de-"#", mostly Int# --> FastInt (#1405)
      Fri Jan  4 21:02:49 EST 2008  Isaac Dupree <id@isaac.cedarswampstudios.org>
        * miscellaneous unnecessary-extension-removal
      Sat Jan  5 19:30:13 EST 2008  Isaac Dupree <id@isaac.cedarswampstudios.org>
        * add FastFunctions
  3. 12 Jan, 2008 1 commit
  4. 05 Dec, 2007 1 commit
  5. 15 Nov, 2007 1 commit
    • Simon Marlow's avatar
      FIX #1828: installing to a patch with spaces in · 5af10d51
      Simon Marlow authored
      We have to pass the path to gcc when calling windres, which itself
      might have spaces in.  Furthermore, we have to pass the path to gcc's
      tools to gcc.  This means getting the quoting right, and after much
      experimentation and reading of the windres sources I found something
      that works: passing --use-temp-files to windres makes it use its own
      implementation of quoting instead of popen(), and this does what we
      want.  Sigh.
  6. 04 Sep, 2007 1 commit
  7. 03 Sep, 2007 1 commit
  8. 01 Sep, 2007 1 commit
  9. 24 Aug, 2007 1 commit
  10. 23 Aug, 2007 2 commits
  11. 10 Aug, 2007 1 commit
    • Simon Marlow's avatar
      FIX #1271: create manifests, and embed them in executables on Windows · eb4352ab
      Simon Marlow authored
      We have 4 new flags:
           suppresses creation of foo.exe.manifest
           suppresses embedding of the manifest in the executable
           specify a program to use instead of windres
           extra options to pass to windres
      "windres" is now copied from mingw and included in a binary
  12. 21 Aug, 2007 1 commit
    • Simon Marlow's avatar
      FIX #1427, #1569: gcc 4.2.x needs -fno-toplevel-reorder · 2ebe8add
      Simon Marlow authored
      We now have various flags that need to be passed to gcc, but only if
      the local gcc version supports them.  So instead of wiring this
      knowledge into ghc when it is built, we now put these "extra gcc
      flags" into a text file in $libdir, extra-gcc-flags, which is created
      by configure.  It is also created by the configure script of a binary
      distribution, so a binary dist is independent of the gcc version used
      to build it.
      Hopefully I got the binary-dist stuff right, but binary dists aren't
      currently working so we'll need to come back and check this.
  13. 07 Aug, 2007 1 commit
    • Isaac Dupree's avatar
      Warning police: eliminate all defaulting within stage1 · 01ecefa4
      Isaac Dupree authored
      Defaulting makes compilation of multiple modules more complicated (re: #1405)
      Although it was all locally within functions, not because of the module
      monomorphism-restriction... but it's better to be clear what's meant, anyway.
      I changed some that were defaulting to Integer, to explicit Int, where Int
      seemed appropriate rather than Integer.
  14. 05 Jun, 2007 1 commit
    • Isaac Dupree's avatar
      remove #if branches for pre-ghc-6.0 · 9f589efb
      Isaac Dupree authored
      I skipped utils/hsc2hs/Main.hs since its ifs also involved
      checking for old versions of nhc98 (I don't want to figure that out),
      but removed everything else I found relating to building with pre-6.0
  15. 01 Jun, 2007 1 commit
  16. 14 May, 2007 1 commit
  17. 10 May, 2007 1 commit
  18. 16 Apr, 2007 2 commits
  19. 10 Apr, 2007 1 commit
    • Ian Lynagh's avatar
      Don't use regexps in the GHC sources · 6c53f40f
      Ian Lynagh authored
      3 small regexps were responsible for pulling 3 packages into core-packages.
      The new code should also do a better job of hiding
      "call-clobbered register used" warnings.
  20. 08 Mar, 2007 2 commits
  21. 15 Feb, 2007 1 commit
    • Simon Marlow's avatar
      When the pipeline just copies the file, prepend a LINE pragma · cf411c9a
      Simon Marlow authored
      For example, "ghc -E Foo.hs -o Foo.bar" just copies Foo.hs to
      Foo.bar.  This patch adds a LINE pragma to the beginning of Foo.bar so
      that further processing can track the location of the original file.
      The motiviation for this is bug #1044.  When generating Haddock docs,
      we preprocess the .hs to a .raw-hs, sometimes this doesn't involve any
      actual preprocessing and in those cases we lose track of the original
  22. 31 Jan, 2007 1 commit
  23. 18 Oct, 2006 1 commit
  24. 11 Oct, 2006 1 commit
  25. 19 Sep, 2006 1 commit
    • Simon Marlow's avatar
      Packages cleanup, and allow new packages to be loaded with :set again · ee565d46
      Simon Marlow authored
      This cleans up the package subsystem a little.  There are some
      changes to the GHC API as a result.
        - GHC.init and GHC.initFromArgs are no longer necessary.
        - GHC.newSession takes the root of the GHC tree as an argument
          (previously passed to GHC.init).
        - You *must* do GHC.setSessionDynFlags after GHC.newSession,
          this is what loads the package database.
        - Several global vars removed from SysTools
        - The :set command in GHCi can now cause new packages to be loaded,
          or can hide/ignore existing packages.
  26. 10 Jul, 2006 2 commits
  27. 13 Jun, 2006 1 commit
  28. 07 Apr, 2006 1 commit
    • Simon Marlow's avatar
      Reorganisation of the source tree · 0065d5ab
      Simon Marlow authored
      Most of the other users of the fptools build system have migrated to
      Cabal, and with the move to darcs we can now flatten the source tree
      without losing history, so here goes.
      The main change is that the ghc/ subdir is gone, and most of what it
      contained is now at the top level.  The build system now makes no
      pretense at being multi-project, it is just the GHC build system.
      No doubt this will break many things, and there will be a period of
      instability while we fix the dependencies.  A straightforward build
      should work, but I haven't yet fixed binary/source distributions.
      Changes to the Building Guide will follow, too.
  29. 01 Mar, 2006 1 commit
  30. 28 Feb, 2006 1 commit
  31. 10 Feb, 2006 1 commit
  32. 25 Oct, 2005 1 commit
    • simonmar's avatar
      [project @ 2005-10-25 12:48:35 by simonmar] · 78b72ed1
      simonmar authored
      Two changes from Krasimir Angelov, which were required for Visual
        - messaging cleanup throughout the compiler.  DynFlags has a new
          log_action :: Severity -> SrcSpan -> PprStyle -> Message -> IO ()
          this action is invoked for every message generated by the
          compiler.  This means a client of the GHC API can direct messages to
          any destination, or collect them up in an IORef for later
          This replaces previous hacks to redirect messages in the GHC API
          (hence some changes to function types in GHC.hs).
        - The JustTypecheck mode of GHC now does what it says.  It doesn't
          run any of the compiler passes beyond the typechecker for each module,
          but does generate the ModIface in order that further modules can be
      And one change from me:
        - implement the LANGUAGE pragma, finally
  33. 17 May, 2005 1 commit
    • simonmar's avatar
      [project @ 2005-05-17 10:51:04 by simonmar] · 71fce424
      simonmar authored
      Rationalise the filename handling in a few places, taking some bits
      from the defunct System.FilePath library.  Also fixes a bug I recently
      introduced in replaceFilenameDirectory.
  34. 27 Apr, 2005 1 commit
    • simonmar's avatar
      [project @ 2005-04-27 08:25:46 by simonmar] · a355262a
      simonmar authored
      newTempName: instead of bumping the processId until we find a name
      that isn't used, add an integer suffix to the processId.  This should
      prevent temp-file conflicts that appear to have been affecting our
      nightly builds and occasionally make -j.
      The right way to allocate a temporary file is to create it straight
      away, but I'm not sure of the implications of passing existing
      temporary files to the various sub-processes that GHC executes, hence
      this fix instead.
  35. 26 Apr, 2005 1 commit
    • sof's avatar
      [project @ 2005-04-26 00:08:17 by sof] · 136861d1
      sof authored
      runSomething: 'rawSystem' might raise an exception to indicate that
      'pgm' couldn't be executed, so catch this here & report.
      Merge to STABLE.
  36. 05 Apr, 2005 1 commit
    • krasimir's avatar
      [project @ 2005-04-05 09:06:36 by krasimir] · bdfa0107
      krasimir authored
      In many places there was a common pattern
      when (verbose >= n) $ putMsg "..."
      It is now replaced with
      debutTraceMsg dflags n "..."
      In few places hPutStrLn stderr or putStrLn was used instead of putMsg in
      the above pattern. They are replaced too. Now putMsg is used only in places
      where the verbosity flag was not checked.