1. 01 Aug, 2002 3 commits
  2. 31 Jul, 2002 2 commits
    • simonmar's avatar
      [project @ 2002-07-31 14:24:18 by simonmar] · e5063a04
      simonmar authored
      Revamp the testsuite framework.  The previous framework was an
      experiment that got a little out of control - a whole new language
      with an interpreter written in Haskell was rather heavyweight and left
      us with a maintenance problem.
      
      So the new test driver is written in Python.  The downside is that you
      need Python to run the testsuite, but we don't think that's too big a
      problem since it only affects developers and Python installs pretty
      easily onto everything these days.
      
      Highlights:
      
        - 790 lines of Python, vs. 5300 lines of Haskell + 720 lines of
          <strange made-up language>.
      
        - the framework supports running tests in various "ways", which should
          catch more bugs.  By default, each test is run in three ways:
          normal, -O, and -O -fasm.  Additionally, if profiling libraries
          have been built, another way (-O -prof -auto-all) is added.  I plan
          to also add a 'GHCi' way.
      
          Running tests multiple ways has already shown up some new bugs!
      
        - documentation is in the README file and is somewhat improved.
      
        - the framework is rather less GHC-specific, and could without much
          difficulty be coaxed into using other compilers.  Most of the
          GHC-specificness is in a separate configuration file (config/ghc).
      
      Things may need a while to settle down.  Expect some unexpected
      failures.
      e5063a04
    • simonpj's avatar
      [project @ 2002-07-31 09:42:42 by simonpj] · 0d4aee25
      simonpj authored
      Update expected output
      0d4aee25
  3. 29 Jul, 2002 3 commits
  4. 24 Jul, 2002 1 commit
  5. 23 Jul, 2002 6 commits
  6. 22 Jul, 2002 1 commit
  7. 19 Jul, 2002 2 commits
  8. 16 Jul, 2002 1 commit
  9. 15 Jul, 2002 2 commits
    • simonmar's avatar
      [project @ 2002-07-15 15:26:44 by simonmar] · ede13993
      simonmar authored
      Turns out that we *did* have a test that would have shown up the
      DsForeign bug (rev. 1.70 of ghc/compiler/deSugar/DsForeign.lhs) but it
      was disabled because it didn't quite work with the current test
      framework.
      
      I've hacked the framework a bit and hopefully knocked the test into
      shape so we shouldn't get the same problem again.
      
      MERGE TO STABLE after testing in HEAD
      ede13993
    • simonmar's avatar
      [project @ 2002-07-15 15:23:14 by simonmar] · d3c5f6e5
      simonmar authored
      Put the source file *before* any extra options for this test on the
      command line.  That way we can compile extra files that depend on
      things created by compiling the original source (eg. _stub files for
      multi-file FFI tests).
      d3c5f6e5
  10. 12 Jul, 2002 1 commit
  11. 10 Jul, 2002 2 commits
  12. 08 Jul, 2002 3 commits
  13. 02 Jul, 2002 1 commit
  14. 28 Jun, 2002 1 commit
  15. 27 Jun, 2002 2 commits
    • ken's avatar
      [project @ 2002-06-27 21:22:06 by ken] · 2acd17c0
      ken authored
      Fix 32-bit assumption: Int is not CInt
      2acd17c0
    • simonmar's avatar
      [project @ 2002-06-27 15:38:58 by simonmar] · d3a2dc1e
      simonmar authored
      Finally fix foreign export and foreign import "wrapper" so that
      exceptions raised during the call are handled properly rather than
      causing the RTS to bomb out.
      
      In particular, calling System.exitWith in a foreign export will cause
      the program to terminate cleanly with the desired exit code.  All
      other exceptions are printed on stderr (and the program is
      terminated).
      
      Details:
      
      GHC.TopHandler.runMain is now called runIO, and has type IO a -> IO a
      (previously it had type IO a -> IO (), but that's not general enough
      for a foreign export).  The stubs for foreign export and forein import
      "wrapper" now automatically wrap the computation in runIO or its dual,
      runNonIO.  It turned out to be simpler to do it this way than to do
      the wrapping in Haskell land (plain foreign exports don't have
      wrappers in Haskell).
      d3a2dc1e
  16. 21 Jun, 2002 5 commits
  17. 20 Jun, 2002 1 commit
  18. 19 Jun, 2002 3 commits