1. 13 Jan, 2003 2 commits
    • simonpj's avatar
      [project @ 2003-01-13 13:19:25 by simonpj] · 67398e1b
      simonpj authored
      ------------------------------------
      	Type signature for derived con2tag
      	------------------------------------
      
      		MERGE TO STABLE
      
      The derived con2tag didn't have a type signature, so we got
      
      	con2tagFoo :: a -> Int#
      	con2tagFoo = \x -> getTag x
      
      The getTag generates a case expression, so we get a polymorphic
      case.  The polymorphic case simply does not work in *interpreted*
      GHC 5.02.3 and as a result neither does con2tag.  Alas.
      
      This commit fixes the problem, by giving a type signature for
      con2TagFoo.  But note that getTag in interpreted GHC 5.02 will continue
      to fail if used in a polymorphic context.  This problem does not arise
      in the HEAD (eval/apply) so I'm going to leave it as a wont-fix bug.
      67398e1b
    • simonpj's avatar
      [project @ 2003-01-13 13:10:19 by simonpj] · 0862ecec
      simonpj authored
      Import trimming
      0862ecec
  2. 10 Jan, 2003 7 commits
    • wolfgang's avatar
      [project @ 2003-01-10 22:08:20 by wolfgang] · e65d8f38
      wolfgang authored
      blockUserSignal() should use SIG_BLOCK instead of SIG_SETMASK, otherwise it
      would also sometimes unblock signals that should be blocked.
      
      MERGE TO STABLE
      e65d8f38
    • simonmar's avatar
      [project @ 2003-01-10 16:33:49 by simonmar] · c3fb6ff1
      simonmar authored
      Changes to the way stack checks are handled in GHCi, to fix a rare bug
      when a stack check fails in a BCO.
      
      We now aggregate all stack use from case alternatives up to the
      enclosing function/thunk BCO, and do a single stack check at the
      beginning of that BCO.  This simplifies the stack check failure code,
      because it doesn't have to cope with the case when a case alternative
      needs to restart.
      
      We still employ the trick of doing a fixed stack check before every
      BCO, only inserting an actual stack check instruction in the BCO if it
      needs more stack than this fixed amount.  The fixed stack check is now
      only done before running a function/thunk BCO.
      c3fb6ff1
    • simonpj's avatar
      [project @ 2003-01-10 16:10:00 by simonpj] · 2d6705ca
      simonpj authored
      Add notes on real-time profiling from Jan-Willhem
      2d6705ca
    • simonmar's avatar
      [project @ 2003-01-10 15:00:22 by simonmar] · e60d7bb1
      simonmar authored
      Fix GHCi breakage on the HEAD: my recent fixes to the BCO cases in
      GenApply weren't quite correct.
      e60d7bb1
    • simonpj's avatar
      [project @ 2003-01-10 14:20:41 by simonpj] · 19618439
      simonpj authored
      Export main from Main (only matters for ghci) [missed file]
      19618439
    • simonpj's avatar
      [project @ 2003-01-10 14:20:01 by simonpj] · 753d8919
      simonpj authored
      Export main from Main (only matters for ghci)
      753d8919
    • simonmar's avatar
      [project @ 2003-01-10 10:55:24 by simonmar] · f7f6daaf
      simonmar authored
      Only add -package readline if $(GhcLibsWithReadline) == YES
      
      This isn't really the correct solution, since we actually want to know
      whether the bootstrapping compiler has readline, not this one, but
      since the most common bootstrapping compiler is going to be the stage1
      compiler in this tree it's a good guess that GhcLibsWithReadline is
      correct.
      f7f6daaf
  3. 09 Jan, 2003 11 commits
  4. 08 Jan, 2003 6 commits
    • simonmar's avatar
      [project @ 2003-01-08 15:47:54 by simonmar] · 356fb38b
      simonmar authored
      Improve the missing module message in the compilation manager, too.
      356fb38b
    • simonmar's avatar
      [project @ 2003-01-08 15:28:04 by simonmar] · b1f1b152
      simonmar authored
      Improve missing-module error messages.  eg.
      
      hello2.hs:1:
          Failed to load interface for `Foo':
              Could not find interface file for `Foo'
              (use -v to see a list of the files searched for)
      
      and if we add the -v flag:
      
      hello2.hs:1:
          Failed to load interface for `Foo':
              Could not find interface file for `Foo'
              locations searched:
                  Foo.hi
                  Foo.hi-boot-6
                  Foo.hi-boot
                  /home/simonmar/builds/i386-unknown-linux/libraries/haskell-src/Foo.hi
                  /home/simonmar/builds/i386-unknown-linux/libraries/haskell98/Foo.hi
                  /home/simonmar/builds/i386-unknown-linux/libraries/readline/Foo.hi
                  /home/simonmar/builds/i386-unknown-linux/libraries/unix/Foo.hi
                  /home/simonmar/builds/i386-unknown-linux/libraries/network/Foo.hi
                  /home/simonmar/builds/i386-unknown-linux/libraries/base/Foo.hi
      b1f1b152
    • simonmar's avatar
      [project @ 2003-01-08 13:03:25 by simonmar] · 4107a275
      simonmar authored
      Add -mno-omit-leaf-frame-pointer if gcc supports it.
      
      MERGE TO STABLE
      4107a275
    • simonmar's avatar
      [project @ 2003-01-08 12:37:45 by simonmar] · 63366c1a
      simonmar authored
      stg_BCO_entry needs to be extern now.
      63366c1a
    • simonmar's avatar
      [project @ 2003-01-08 12:03:28 by simonmar] · 7a156bdf
      simonmar authored
      - Detect whether we have a recent GCC that might need
        -mno-omit-leaf-fram-pointer.
      
      - Add missing HAVE_SC_GETGR_R_SIZE_MAX and HAVE_SC_GETPW_R_SIZE_MAX
        templates to acconfig.h.
      
      - Regen mk/config.h.in.
      7a156bdf
    • simonmar's avatar
      [project @ 2003-01-08 10:10:19 by simonmar] · 3801775f
      simonmar authored
      Update the documentation on --make mode to indicate that multiple
      sources/modules can be given on the command line, as well as multiple
      object files.
      
      MERGE TO STABLE
      3801775f
  5. 07 Jan, 2003 5 commits
  6. 06 Jan, 2003 9 commits
    • simonpj's avatar
      [project @ 2003-01-06 15:30:14 by simonpj] · fcf37c94
      simonpj authored
      --------------------------------------------------------------
      	Several small but tiresome things shown up by Template Haskell
      	--------------------------------------------------------------
      
      1. Make the 'knot' in TcRnDriver much smaller; in fact move it to
         TcIfaceSig.tcInterfaceSigs.  Reasons
      	a) much tidier
      	b) avoids a loop in Template Haskell, when we try to run
      	   an expression during type checking (when the knot is
      	   not fully tied)
      
         See comments in TcIfaceSig
      
      2. Stop typechecking if tcGroup fails.  Reason: otherwise tcLookup can
         fail in the next group.
      
      3. Catch linking errors more gracefully when running a splice (in TcSplice)
      fcf37c94
    • simonpj's avatar
      [project @ 2003-01-06 15:29:27 by simonpj] · 97ee3b24
      simonpj authored
      Small extra tc-trace
      97ee3b24
    • simonpj's avatar
      [project @ 2003-01-06 15:27:11 by simonpj] · b708d7d8
      simonpj authored
      Make HscMain.compileExpr run lint if -dcore-lint is on
      b708d7d8
    • simonpj's avatar
      [project @ 2003-01-06 15:26:09 by simonpj] · b6247d0d
      simonpj authored
      1.  Arrange that -ddump-tc-trace will print out the exception caught by tryTc
      
      2.  Make forkM a bit quieter, unless -ddump-tc-trace is on.
      b6247d0d
    • simonpj's avatar
      [project @ 2003-01-06 15:19:08 by simonpj] · 4eb50f71
      simonpj authored
      Spelling
      4eb50f71
    • simonpj's avatar
      [project @ 2003-01-06 15:18:48 by simonpj] · 019b29da
      simonpj authored
      dieWith uses ProgramError, not UsageError
      019b29da
    • simonpj's avatar
      [project @ 2003-01-06 15:17:57 by simonpj] · aef84dce
      simonpj authored
      ---------------------------------------------
      	Try slightly more aggressive rule application
      	---------------------------------------------
      
      Switch on AlwaysActive rules even in SimplGently.  This should
      make some TH programs a little better, but it's not a big deal.
      aef84dce
    • simonpj's avatar
      [project @ 2003-01-06 15:16:33 by simonpj] · 392095c9
      simonpj authored
      --------------------------------
      	Make ModLocation have a FilePath
      	instead of (Maybe FilePath) for
      	the object-file location
      	--------------------------------
      
      This generally tides things up, and makes ml_obj_file more like
      ml_hi_file.
      
      Furthermore the ml_obj_file field gets filled in even when we
      initially expect just an .hi file.  This is important for Template
      Haskell.
      392095c9
    • simonmar's avatar
      [project @ 2003-01-06 14:40:04 by simonmar] · e26bfe83
      simonmar authored
      Disable the version check on the .hi file for --show-iface.  This
      means that it can be used on .hi files for other "ways" (eg. profiled)
      without having to resort to using the undocumented -buildtag option.
      e26bfe83