1. 04 Feb, 2005 4 commits
  2. 03 Feb, 2005 4 commits
  3. 02 Feb, 2005 12 commits
  4. 01 Feb, 2005 10 commits
  5. 31 Jan, 2005 10 commits
    • simonpj's avatar
      [project @ 2005-01-31 16:59:37 by simonpj] · b2446845
      simonpj authored
      Tidy up stop-phase passing; fix bug in -o handling for ghc -E X.hs -o X.pp
      b2446845
    • simonpj's avatar
      [project @ 2005-01-31 15:48:13 by simonpj] · bd0d2652
      simonpj authored
      ---------------------------
      	Some Template Haskell fixes
      	---------------------------
      
      * Tidy up conversion from TH.Name to RdrName.RdrName. It was partly
        duplicated between Convert.thRdrName and TcSplice.lookupThName.
        Now it's all in one place: Convert.thRdrName
      
      * Fix a bug in TH.tupleTypeName/TH.tupleDataName (GHC.Tuple -> Data.Tuple)
      
      * Export appEs from Language.Haskell.TH
      bd0d2652
    • simonpj's avatar
      [project @ 2005-01-31 14:57:36 by simonpj] · 34fa81c4
      simonpj authored
      Compile utilities and lib/compat with GhcHcOpts, in case it is profiled
      34fa81c4
    • simonpj's avatar
      [project @ 2005-01-31 14:53:13 by simonpj] · f5106d93
      simonpj authored
      Compile utilities and lib/compat with GhcHcOpts, in case it is profiled
      f5106d93
    • simonpj's avatar
      [project @ 2005-01-31 13:53:29 by simonpj] · c269f662
      simonpj authored
      Wibble to hoistForAllTys
      c269f662
    • simonpj's avatar
      [project @ 2005-01-31 13:25:33 by simonpj] · f25b9225
      simonpj authored
      ---------------------------
      	Types and evaluated-ness in
      	  CoreTidy and CorePrep
      	---------------------------
      
      This commmit fixes two problems.
      
      1.  DataToTagOp requires its argument to be evaluated, otherwise it silently
          gives the wrong answer.  This was not happening because we had
      	case (tag2Enum x) of y -> ...(dataToTag y)...
          and the tag2Enum was being inlined (it's non-speculative), giving
      	...(dataToTag (tag2Enum x))...
      
          Rather than relying on a somewhat-delicate global invariant, CorePrep
          now establishes the invariant that DataToTagOp's argument is evaluated.
          It does so by putting up-to-date is-evaluated information into each
          binder's UnfoldingInfo; not a full unfolding, just the (OtherCon [])
          for evaluated binders.
      
          Then there's a special case for DataToTag where applications are dealt with.
      
          Finally, we make DataToTagOp strict, which it really is.
      
      
      2.  CoreTidy now does GADT refinement as it goes. This is important to ensure that
          each variable occurrence has informative type information, which in turn is
          essential to make exprType work (otherwise it can simply crash).
          [This happened in test gadt/tdpe]
      
          CorePrep has the same problem, but the solution is a little different:
          when looking up in the cloning environment, use the type at the occurrence
          site if we're inside a GADT.  It might be cleaner to use the same story as
          CoreTidy, but then we'd need to keep an in-scope set for type variables.
          No big deal either way.
      f25b9225
    • simonpj's avatar
      [project @ 2005-01-31 13:22:57 by simonpj] · 04612d54
      simonpj authored
      Rename mkTvSubst to mkOpenTvSubst; add new mkTvSubst
      04612d54
    • simonpj's avatar
      [project @ 2005-01-31 13:21:01 by simonpj] · 94df1013
      simonpj authored
      Name evaldUnfolding = OtherCon [], and use it
      94df1013
    • simonmar's avatar
      [project @ 2005-01-31 12:55:50 by simonmar] · 4078a5cf
      simonmar authored
      Move signal prototypes into RtsExternal.h
      4078a5cf
    • wolfgang's avatar
      [project @ 2005-01-31 05:27:14 by wolfgang] · c560ae86
      wolfgang authored
      Reorganise handling of -fPIC flags passed to C compiler.
      The flags expected by gcc differ only slightly per platform
      (basically depending whether you are on a Mac or not), we don't need
      separate cases for every processor.
      
      TODO: Display an error message for platforms where -fPIC -fvia-C is not
            supported.
      c560ae86