1. 04 Sep, 2016 1 commit
  2. 31 Aug, 2016 1 commit
  3. 21 Aug, 2016 2 commits
    • Edward Z. Yang's avatar
      We also need to retypecheck before when we do parallel make. · e528061e
      Edward Z. Yang authored
      Summary:
      Kept this seperate from the previous patch for clarity.
      Comes with a test.
      Signed-off-by: default avatarEdward Z. Yang <ezyang@cs.stanford.edu>
      
      Test Plan: validate
      
      Reviewers: simonpj, austin, bgamari
      
      Subscribers: thomie
      
      Differential Revision: https://phabricator.haskell.org/D2220
      
      GHC Trac Issues: #12035
      e528061e
    • Edward Z. Yang's avatar
      Axe initIfaceTc, tie the knot through HPT (or if_rec_types). · e907e1f1
      Edward Z. Yang authored
      Summary:
      initIfaceTc was originally used to make sure when we typecheck
      an interface, it can find the TyThings for things it itself
      defined.  However, in the case of retypecheckLoop, this wasn't
      necessary because we ALREADY tied the knot through the HPT.
      
      This commit removes initIfaceTc, instead relying on the HPT
      to tie the knot.  genModDetails' caller needed to be modified
      to tie the knot, but there are not that many call-sites of
      typecheckIface so the change is quite reasonable.
      
      We also introduce a new 'initIfaceLoad', which does
      NOT set up 'if_rec_types'.  It's used when we're
      typechecking old, up-to-date interfaces in, since we're
      never going to update the type environment.
      
      The full details are in Note [Knot-tying typecheckIface].
      Displeasingly, we need a special case to handle DFuns in
      the case of tcHiBootIface, see
      Note [DFun knot-tying special case] for the gory details.
      
      I also added another test which tickles a bug in a buggy
      version of this patch (see "Why the seq?")
      Signed-off-by: default avatarEdward Z. Yang <ezyang@cs.stanford.edu>
      
      Test Plan: validate
      
      Reviewers: simonpj, austin, bgamari
      
      Subscribers: thomie
      
      Differential Revision: https://phabricator.haskell.org/D2349
      e907e1f1
  4. 05 Aug, 2016 1 commit
  5. 30 Jun, 2016 1 commit
  6. 29 Jun, 2016 1 commit
    • thomie's avatar
      Testsuite: use ignore_stderr/stdout instead of ignore_output · 1084d375
      thomie authored
      The problem with ignore_output is that it hides errors for WAY=ghci.
      GHCi always returns with exit code 0 (unless it is broken itself).
      
      For example: ghci015 must have been failing with compile errors for
      years, but we didn't notice because all output was ignored.
      
      Therefore, replace all uses of ignore_output with either ignore_stderr
      or ignore_stdout. In some cases I opted for adding the expected output.
      
      Update submodule hpc and stm.
      
      Reviewed by: simonmar
      
      Differential Revision: https://phabricator.haskell.org/D2367
      1084d375
  7. 28 Jun, 2016 1 commit
    • thomie's avatar
      Testsuite: simplify extra_file handling · 206b4a1d
      thomie authored
      Before, `extra_files(['.hpc/Main.mix'])` meant copy `Main.mix` to
      `<testdir>/.hpc/Main.mix`. This feature wasn't really necessary, so now
      it just means copy `Main.mix` to `<testdir>/Main.mix`. This simplifies
      the implementation.
      
      Some small other cleanups as well. -40 lines of code.
      206b4a1d
  8. 08 Jun, 2016 1 commit
    • niteria's avatar
      Add some determinism tests · d4b548ef
      niteria authored
      These are the tests that I accumulated fixing real issues.
      Each test is a separate thing that was broken and they are
      relatively small.
      
      GHC Trac: #4012
      d4b548ef
  9. 06 Jun, 2016 1 commit
  10. 25 May, 2016 1 commit
  11. 24 May, 2016 1 commit
    • niteria's avatar
      Make Arrow desugaring deterministic · 9d06ef1a
      niteria authored
      This kills two instances of varSetElems that turned out to be
      nondeterministic. I've tried to untangle this before, but it's
      a bit hard with the fixDs in the middle. Fortunately I now have
      a test case that proves that we need determinism here.
      
      Test Plan: ./validate, new testcase
      
      Reviewers: simonpj, simonmar, austin, bgamari
      
      Reviewed By: bgamari
      
      Subscribers: thomie
      
      Differential Revision: https://phabricator.haskell.org/D2258
      
      GHC Trac Issues: #4012
      9d06ef1a
  12. 17 May, 2016 1 commit
    • thomie's avatar
      Testsuite: run tests in /tmp after copying required files · 3f3dc23e
      thomie authored
      Major change to the testsuite driver.
      
      For each TEST:
         * create a directory `<testdir>` inside `/tmp`.
      
         * link/copy all source files that the test needs into `<testdir>`.
      
         * run the test inside `<testdir>`.
      
         * delete `<testdir>`
      
      Extra files are (temporarily) tracked in
      `testsuite/driver/extra_files.py`, but can also be specified using the
      `extra_files` setup function.
      
      Differential Revision: https://phabricator.haskell.org/D1187
      
      Reviewed by: Rufflewind, bgamari
      
      Trac: #11980
      3f3dc23e