1. 21 Dec, 2018 15 commits
    • Ben Gamari's avatar
      gitlab-ci: Set locale · 306ad5c9
      Ben Gamari authored
      306ad5c9
    • Ben Gamari's avatar
      46c575a8
    • Ben Gamari's avatar
      gitlab-ci: Tag linter stage · 4cb59c19
      Ben Gamari authored
      Previously the linters were tagged with x86_64-linux, meaning that linting jobs
      would often get stuck behind builds in the queue. Given that linting jobs are
      fairly low-cost they hold up later build stages it is important that we reduce
      this latency.
      4cb59c19
    • Ben Gamari's avatar
      gitlab-ci: Fix Windows build · 6c505087
      Ben Gamari authored
      6c505087
    • Ben Gamari's avatar
      gitlab-ci: Remove CircleCI configuration · b1e029a9
      Ben Gamari authored
      Our CircleCI builds will fail anyways without large instances.
      b1e029a9
    • David Eichmann's avatar
      CircleCI: Fix check for git push retry limit. · 95fbf878
      David Eichmann authored
      Test Plan: Observe CircleCI
      
      Reviewers: bgamari
      
      Reviewed By: bgamari
      
      Subscribers: rwbarton, carter
      
      Differential Revision: https://phabricator.haskell.org/D5464
      95fbf878
    • Ben Gamari's avatar
      gitlab-ci: Allow Hadrian build on Windows to fail · 4147df3a
      Ben Gamari authored
      Due to #16073.
      4147df3a
    • Gabor Greif's avatar
      remove option · 59f29242
      Gabor Greif authored
      59f29242
    • Ben Gamari's avatar
      Revert "gitlab: Drop submodules hack" · a3c6f5e4
      Ben Gamari authored
      It turns out that the submodules hack is useful to ensure that
      CI works in forks.
      
      This reverts commit 90ceafa8.
      a3c6f5e4
    • Simon Peyton Jones's avatar
      Improve documention of TypeInType · e9346b53
      Simon Peyton Jones authored
      e9346b53
    • Simon Peyton Jones's avatar
      Fix treatment of hi-boot files and dfuns · a57d5c4d
      Simon Peyton Jones authored
      Trac #16038 exposed the fact that TcRnDriver.checkHiBootIface
      was creating a binding, in the module being compiled, for
         $fxBlah = $fBlah
      
       but $fxBlah was a /GlobalId/. But all bindings should be for
       /LocalIds/ else dependency analysis goes down the tubes.
      
      * I added a CoreLint check that an occurrence of a GlobalId
        is not bound by an binding of a LocalId.  (There is already
        a binding-site check that no binding binds a GlobalId.)
      
      * I refactored (and actually signficantly simplified) the
        tricky code for dfuns in checkHiBootIface to ensure that
        we get LocalIds for those boot-dfuns.
      
      Alas, I then got "duplicate instance" messages when compiling
      HsExpr. It turns out that this is a long-standing, but extremely
      delicate, bug: even before this patch, if you compile HsExpr
      with -ddump-tc-trace, you get "duplicate instance". Without
      -ddump-tc-trace, it's OK.  What a mess!
      
      The reason for the duplicate-instance is now explained in
      Note [Loading your own hi-boot file] in LoadIface.  I fixed
      it by a Gross Hack in LoadIface.loadInterface. This is at
      least no worse than before.
      
      But there should be a better way. I have opened #16081 for this.
      a57d5c4d
    • Simon Peyton Jones's avatar
      Tiny refactor to tcExtendRecEnv · 66ce7de1
      Simon Peyton Jones authored
      In tcExtendRecEnv, there is no need to us setGlobalTypeEnv
      (which side-effects the tcg_type_env_var).  tcExtendRecEnv
      is used only when kind-checking a group of type/class decls
      and no knot-tying via tcg_type_env_var is needed.
      
      There is no change in functionality.
      66ce7de1
    • Simon Peyton Jones's avatar
      Comments only · 28188e06
      Simon Peyton Jones authored
      28188e06
    • Simon Peyton Jones's avatar
      Make candidateQTvs contain tyvar with zonked kinds · 71e26a74
      Simon Peyton Jones authored
      candidateQTyVars was failing to return fully-zonked
      tyvars, and that made things fall over chaotically
      when we try to sort them into a well-scoped telescope.
      Result: Trac #15795
      
      So I made candidateQTvs guarantee to have fully-zonked
      tyvars (i.e. with zonked kinds).  That's a bit annoying
      but not really difficult.
      71e26a74
    • Ryan Scott's avatar
      Fix #16002 by moving a validity check to the renamer · 28f41f1a
      Ryan Scott authored
      Summary:
      The validity check which rejected things like:
      
      ```lang=haskell
      type family B x where
        A x = x
      ```
      
      Used to live in the typechecker. But it turns out that this validity
      check was //only// being run on closed type families without CUSKs!
      This meant that GHC would silently accept something like this:
      
      ```lang=haskell
      type family B (x :: *) :: * where
        A x = x
      ```
      
      This patch fixes the issue by moving this validity check to the
      renamer, where we can be sure that the check will //always// be run.
      
      Test Plan: make test TEST=T16002
      
      Reviewers: simonpj, bgamari
      
      Reviewed By: simonpj
      
      Subscribers: goldfire, rwbarton, carter
      
      GHC Trac Issues: #16002
      
      Differential Revision: https://phabricator.haskell.org/D5420
      28f41f1a
  2. 20 Dec, 2018 3 commits
  3. 19 Dec, 2018 8 commits
  4. 18 Dec, 2018 13 commits
  5. 17 Dec, 2018 1 commit