This project is mirrored from https://gitlab.haskell.org/ghc/ghc.git. Pull mirroring failed .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer.
Last successful update .
  1. 21 Sep, 2014 1 commit
  2. 20 Sep, 2014 1 commit
    • Herbert Valerio Riedel's avatar
      Set up framework for generalising Data.List to Foldables · 3daf0023
      Herbert Valerio Riedel authored
      This renames the Data.List module to Data.OldList, and puts a new
      Data.List module into its place re-exporting all list functions.
      
      The plan is to leave the monomorphic versions of the list functions in
      Data.OldList to help smooth the transition.
      
      The new Data.List module then will simply re-export entities from
      Data.OldList and Data.Foldable.
      
      This refactoring has been placed in a separate commit to be able to
      better isolate any regressions caused by the actual list function
      generalisations when implementing #9586
      
      This also updates the haskell2010, haskell98, and array submodules
      
      Reviewed By: austin, ekmett
      
      Differential Revision: https://phabricator.haskell.org/D228
      3daf0023
  3. 18 Sep, 2014 1 commit
  4. 16 Sep, 2014 1 commit
  5. 15 Sep, 2014 1 commit
    • Herbert Valerio Riedel's avatar
      Export `Traversable()` and `Foldable()` from Prelude · c0fa383d
      Herbert Valerio Riedel authored
      This exposes *only* the type-classes w/o any of their methods.
      This is the very first step for implementing BPP (see #9586), which
      already requires breaking up several import-cycles leading back to `Prelude`.
      
      Ideally, importing `Prelude` should be avoided in most `base` modules,
      as `Prelude` does not define any entities, but rather re-exports
      existing ones.
      
      Test Plan: validate passes
      
      Reviewers: ekmett, austin
      
      Reviewed By: ekmett, austin
      
      Subscribers: simonmar, ezyang, carter
      
      Differential Revision: https://phabricator.haskell.org/D209
      
      GHC Trac Issues: #9586
      c0fa383d
  6. 13 Sep, 2014 1 commit
  7. 09 Sep, 2014 2 commits
    • Herbert Valerio Riedel's avatar
      Bump `base` version to 4.8.0.0 for real · c6f502b2
      Herbert Valerio Riedel authored
      This commit updates several submodules in order to bump
      the upper bounds on `base` of most boot packages
      
      Moreover, this updates some of the test-suite cases which have
      version numbers hardcoded within.
      
      However, I'm not sure if this commit didn't introduce the following
      two test-failures
      
         ghc-api  T8628 [bad stdout] (normal)
         ghc-api  T8639_api [bad stdout] (normal)
      
      This needs investigation
      c6f502b2
    • Austin Seipp's avatar
      Make Applicative a superclass of Monad · d94de872
      Austin Seipp authored
      
      
      Summary:
      This includes pretty much all the changes needed to make `Applicative`
      a superclass of `Monad` finally. There's mostly reshuffling in the
      interests of avoid orphans and boot files, but luckily we can resolve
      all of them, pretty much. The only catch was that
      Alternative/MonadPlus also had to go into Prelude to avoid this.
      
      As a result, we must update the hsc2hs and haddock submodules.
      Signed-off-by: default avatarAustin Seipp <austin@well-typed.com>
      
      Test Plan: Build things, they might not explode horribly.
      
      Reviewers: hvr, simonmar
      
      Subscribers: simonmar
      
      Differential Revision: https://phabricator.haskell.org/D13
      d94de872
  8. 28 Aug, 2014 1 commit
  9. 22 Aug, 2014 1 commit
    • Edward Z. Yang's avatar
      Do not zero out version number when processing wired-in packages. · 22520cd7
      Edward Z. Yang authored
      
      
      Summary:
      Previously, GHC would look for instances of wired-in packages in the
      in-memory package database and null out the version number.  This was
      necessary when the sourcePackageId was used to determine the linker
      symbols; however, we now use a package key, so only that needs to be
      updated.
      
      Long-term, we can remove this hack by ensuring that Cabal actually records
      the proper package key in the database.  This will also fix an unrelated
      hack elsewhere.
      
      Keeping version numbers means that wired in packages get rendered differently
      when output by GHC.  This is the source of all the test-case output changes.
      Signed-off-by: default avatarEdward Z. Yang <ezyang@cs.stanford.edu>
      
      Test Plan: validate
      
      Reviewers: hvr, austin
      
      Subscribers: simonmar, ezyang, carter
      
      Differential Revision: https://phabricator.haskell.org/D170
      22520cd7
  10. 19 Aug, 2014 2 commits
  11. 12 Aug, 2014 1 commit
  12. 05 Aug, 2014 1 commit
    • Edward Z. Yang's avatar
      Thinning and renaming modules from packages on the command line. · 20787529
      Edward Z. Yang authored
      
      
      Summary:
      This patch set adds support for extra syntax on -package and related
      arguments which allow you to thin and rename modules from a package.
      For example, this argument:
      
          -package "base (Data.Bool as Bam, Data.List)"
      
      adds two more modules into scope, Bam and Data.List, without adding
      any of base's other modules to scope.
      
      These flags are additive: so, for example, saying:
      
          -hide-all-packages -package base -package "base (Data.Bool as Bam)"
      
      will provide both the normal bindings for modules in base, as well as
      the module Bam.
      
      There is also a new debug flag -ddump-mod-map which prints the state
      of the module mapping database.  H = hidden, E = exposed (so for
      example EH says the module in question is exported, but in a hidden
      package.)
      
      Module suggestions have been minorly overhauled to work better with reexports:
      if you have -package "base (Data.Bool as Bam)" and mispell Bam, GHC
      will suggest "Did you mean Bam (defined via package flags to be
      base:Data.Bool)"; and generally you will get more accurate information.
      Also, fix a bug where we suggest the -package flag when we really need
      the -package-key flag.
      
      NB: The renaming afforded here does *not* affect what wired in
      symbols GHC generates.  (But it does affect implicit prelude!)
      
      ToDo: add 'hiding' functionality, to make it easier to support the alternative
      prelude use-case.
      
      ToDo: Cabal support
      Signed-off-by: default avatarEdward Z. Yang <ezyang@cs.stanford.edu>
      
      Test Plan: new tests and validate
      
      Reviewers: simonpj, simonmar, hvr, austin
      
      Subscribers: simonmar, relrod, ezyang, carter
      
      Differential Revision: https://phabricator.haskell.org/D113
      
      GHC Trac Issues: #9375
      20787529
  13. 31 Jul, 2014 2 commits
    • Simon Peyton Jones's avatar
      Fix up ghci044 · fd47e261
      Simon Peyton Jones authored
      fd47e261
    • Simon Peyton Jones's avatar
      Complete work on new OVERLAPPABLE/OVERLAPPING pragmas (Trac #9242) · 1ae5fa45
      Simon Peyton Jones authored
      * Deprecate -XOverlappingInstances
      
      * Update test suite.  Several tests even had entirely unnecessary
        uses of -XOverlappingInstances
      
      * Update user manual with a careful description of the instance
        resolution story
      
      * Fix an outright bug in the handling of duplidate instances in GHCi,
        which are meant to silently overwrite the earlier duplicate. The
        logic was right for family instances but was both more complicated,
        and plain wrong, for class instances.  (If you are interested, the
        bug was that we were eliminating the duplicate from the InstEnv, but
        not from the [ClsInst] held in tcg_insts.)  Test is ghci044a.
      1ae5fa45
  14. 07 Jul, 2014 1 commit
  15. 28 Jun, 2014 1 commit
    • Herbert Valerio Riedel's avatar
      Simplify .gitignore files · 767b9ddf
      Herbert Valerio Riedel authored
      
      
      It's a bit confusing to have .gitignore files spread all over the
      filesystem. This commit tries to consolidate those into one .gitignore
      file per component. Moreover, we try to describe files to be ignored which
      happen to have a common identifying pattern by glob patterns.
      Signed-off-by: Herbert Valerio Riedel's avatarHerbert Valerio Riedel <hvr@gnu.org>
      767b9ddf
  16. 20 Jun, 2014 1 commit
    • Simon Peyton Jones's avatar
      Tidy up the printing of single-predicate contexts · 0ceb84e9
      Simon Peyton Jones authored
      This covers things like
         Eq a => blah   and   (?x::Int) => blah
      where there is just one predicate. Previously we used an ad-hoc
      test to decide whether to parenthesise it, but acutally there is
      a much simpler solution: just use the existing precedence mechamism.
      
      This applies both to Type and HsType.
      0ceb84e9
  17. 17 Jun, 2014 1 commit
  18. 11 Jun, 2014 1 commit
    • Simon Peyton Jones's avatar
      Fix tyConToIfaceDecl (Trac #9190) · e5257f8f
      Simon Peyton Jones authored
      There are three bugs here, one serious
      
       * We were failing to tidy the type arguments in an IfTyConParent
         This is what was causing Trac #9190.
      
       * toIfaceTcArgs is careful to suppress kind arguments, but there
         was a clone, tidyToIfaceTcArgs in IfaceSyn which didn't.
         Now the latter goes via the former.
      
       * When pretty-printing a IfaceDecl for an algebraic data type, and
         doing so in Haskell-98 syntax, we were silently assuming that the
         universal type variables of the TyCon and the DataCon were the
         same. But that has not been true for some time. Result: a very
         confusing display.
      
         Solution: during the conversion to IfaceSyn, take the opportunity
         to make the universal type variables line up exactly.  This is very
         easy to do, makes the pretty-printing easy, and leaves open the future
         possiblity of not serialising the universal type variables of the
         data constructor.
      e5257f8f
  19. 07 Jun, 2014 2 commits
  20. 06 Jun, 2014 2 commits
  21. 03 Jun, 2014 2 commits
    • Simon Peyton Jones's avatar
      Add :kind test in T7730 · d02cd1a7
      Simon Peyton Jones authored
      d02cd1a7
    • Simon Peyton Jones's avatar
      Do pretty-printing of TyThings via IfaceDecl (Trac #7730) · b4856f9f
      Simon Peyton Jones authored
      All the initial work on this was done fy 'archblob' (fcsernik@gmail.com);
      thank you!
      
      I reviewed the patch, started some tidying, up and then ended up in a huge
      swamp of changes, not all of which I can remember now.  But:
      
      * To suppress kind arguments when we have -fno-print-explicit-kinds,
          - IfaceTyConApp argument types are in a tagged list IfaceTcArgs
      
      * To allow overloaded types to be printed with =>, add IfaceDFunTy to IfaceType.
      
      * When printing data/type family instances for the user, I've made them
        print out an informative RHS, which is a new feature. Thus
              ghci> info T
              data family T a
              data instance T Int = T1 Int Int
              data instance T Bool = T2
      
      * In implementation terms, pprIfaceDecl has just one "context" argument,
        of type IfaceSyn.ShowSub, which says
             - How to print the binders of the decl
               see note [Printing IfaceDecl binders] in IfaceSyn
             - Which sub-comoponents (eg constructors) to print
      
      * Moved FastStringEnv from RnEnv to OccName
      
      It all took a ridiculously long time to do.  But it's done!
      b4856f9f
  22. 30 May, 2014 1 commit
  23. 10 May, 2014 2 commits
    • Joachim Breitner's avatar
      Revert output of T5979 · fe8a378c
      Joachim Breitner authored
      this reverts 12332f1a. The error message changes when there are two
      versions of transformers in the database, one of them hidden. That might
      be a bug of its own, but for now lets make the test case succeed after a
      fresh build. Affected developers should probably
      $ ./inplace/bin/ghc-pkg unregister transformers-0.3.0.0
      fe8a378c
    • Joachim Breitner's avatar
      Require transformers for T5979 · 3abf949b
      Joachim Breitner authored
      in order to get a reliable error message
      (although the error message could be improved anyways to mention the
      explicit package the module is imported with.)
      3abf949b
  24. 08 May, 2014 1 commit
  25. 06 May, 2014 1 commit
    • Simon Peyton Jones's avatar
      Modularise pretty-printing for foralls · 3c3ce829
      Simon Peyton Jones authored
      See TypeRep.pprUserForAll.  This just makes forall-printing a bit more
      consistent.  In particular, I wasn't seeing the kind foralls when
      displaying a CoAxiom or CoAxBranch
      
      The output on T7939 is just possible a bit too verbose now, but even if so
      that's an error in the right direction.
      3c3ce829
  26. 28 Apr, 2014 1 commit
    • Simon Peyton Jones's avatar
      Print for-alls more often (Trac #9018) · 2f3ea952
      Simon Peyton Jones authored
      We now display the foralls of a type if any of the type variables
      is polykinded.  This put kind polymorphism "in your face" a bit more
      often, but eliminates a lot of head scratching.
      
      The user manual reflects the new behaviour.
      2f3ea952
  27. 05 Apr, 2014 1 commit
    • eir@cis.upenn.edu's avatar
      Fix #8958. · d468cd37
      eir@cis.upenn.edu authored
      We now do role inference on stupid datatype contexts, allowing a
      lightweight role annotation syntax.
      d468cd37
  28. 03 Apr, 2014 1 commit
  29. 23 Mar, 2014 1 commit
  30. 22 Mar, 2014 2 commits
  31. 21 Mar, 2014 1 commit
  32. 17 Mar, 2014 1 commit