Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Tag: 2009-03-13
Commits on Mar 12, 2009
  1. @simonmar

    FIX #3079, dodgy parsing of LANGUAGE pragmas

    simonmar authored
    I ended up rewriting this horrible bit of code, using (yikes) lazy I/O
    to slurp in the source file a chunk at a time.  The old code tried to
    read the file a chunk at a time, but failed with LANGUAGE pragmas
    because the parser for LANGUAGE has state and the state wasn't being
    saved between chunks.  We're still closing the Handle eagerly, so
    there shouldn't be any problems here.
Commits on Mar 11, 2009
  1. @simonmar
  2. @igfoo
  3. @simonmar

    FIX #2816 (correct unicode output for :type/:kind)

    simonmar authored
    This is just a hack, since we don't have correct unicode output for
    Handles in general, I just fixed a couple of places where we were not
    converting to UTF-8 for output.
  4. @simonmar

    Fix #2992: don't create a named event

    simonmar authored
    Evidently I misread the docs for CreateEvent: if you pass a name to
    CreateEvent, then it creates a single shared system-wide Event with
    that name.  So all Haskell processes on the machine were sharing the
    same Event object.  duh.
  5. @simonmar

    FIX #2832: Setting SplitObjs=NO doesn't disable -split-objs in GHC

    simonmar authored
    Now ghc --info reports whether-split-objs is supported, rather than
    whether the libraries were built using -split-objs.
  6. @simonmar
Commits on Mar 10, 2009
  1. @igfoo
Commits on Mar 9, 2009
  1. @simonmar

    Fix a bug which sometimes caused extra major GCs to be performed

    simonmar authored
    A long-running GC would cause the timer signal to declare the system
    to be idle, which would cause a major GC immediately following the
    current GC.  This only happened with +RTS -N2 or greater.
  2. @simonmar

    Redesign 64-bit HEAP_ALLOCED (FIX #2934 at the same time)

    simonmar authored
    After much experimentation, I've found a formulation for HEAP_ALLOCED
    that (a) improves performance, and (b) doesn't have any race
    conditions when used concurrently.  GC performance on x86_64 should be
    improved slightly.  See extensive comments in MBlock.h for the
Commits on Mar 8, 2009
  1. @igfoo

    Don't force HSCOLOUR_SRCS = YES when validating

    igfoo authored
    This removes a burden from developers, and I can't remember an
    occasion where it would have caught a regression.
Commits on Mar 7, 2009
  1. @rleshchinskiy
  2. @rleshchinskiy
Commits on Mar 6, 2009
  1. @simonmar

    Partial fix for #2917

    simonmar authored
     - add newAlignedPinnedByteArray# for allocating pinned BAs with
       arbitrary alignment
     - the old newPinnedByteArray# now aligns to 16 bytes
    Foreign.alloca will use newAlignedPinnedByteArray#, and so might end
    up wasting less space than before (we used to align to 8 by default).
    Foreign.allocaBytes and Foreign.mallocForeignPtrBytes will get 16-byte
    aligned memory, which is enough to avoid problems with SSE
    instructions on x86, for example.
    There was a bug in the old newPinnedByteArray#: it aligned to 8 bytes,
    but would have failed if the header was not a multiple of 8
    (fortunately it always was, even with profiling).  Also we
    occasionally wasted some space unnecessarily due to alignment in
    I haven't done anything about Foreign.malloc/mallocBytes, which will
    give you the same alignment guarantees as malloc() (8 bytes on
    Linux/x86 here).
  2. @igfoo

    Add CONTRACT to the pragmas that we recognise.

    igfoo authored
    It's used by ESC/Haskell.
  3. @igfoo
  4. @rleshchinskiy

    Fix warning

    rleshchinskiy authored
  5. @rleshchinskiy
  6. @mchakravarty
Commits on Mar 5, 2009
  1. @igfoo

    Add --version to runghc. Trac #2757.

    igfoo authored
    We use the GHC version number, as the old runghc one doesn't seem very
  2. @simonmar

    add final newlines

    simonmar authored
    My Windows build has started complaining about lacking final newlines,
    I'm not entirely sure why.
  3. @simonmar
  4. @simonmar
  5. @igfoo
  6. @igfoo

    On OS X/x86, tell gcc to generate instructions for i686. Fixes trac #…

    igfoo authored
    By default, gcc on OS X will generate SSE instructions, which need
    things 16-byte aligned, but we don't 16-byte align things. Thus drop
    back to generic i686 compatibility.
  7. @igfoo

    By default, only HsColour the docs if we find HsColour. Fixes trac #3…

    igfoo authored
    If you manually set HSCOLOUR_SRCS=YES then the build will fail if
    HsColour wasn't found.
  8. Make -fdicts-cheap cope with implication constraints authored
    See the Note [Dictionary-like types] in TcType for the full story here
    Should only affect programs that use -fdicts-cheap, for
    which you'll get better arities
  9. Finally fix Trac #3066 authored
    This is a fix to 
      Tue Mar  3 17:42:58 GMT 2009
        * Fix Trac #3066: checking argument types in foreign calls
    which I embarassingly got wrong.
    Have to be careful when expanding recursive newtypes.
    Pls merge.
Commits on Mar 4, 2009
  1. @igfoo
  2. Fix spelling (Trac#3069) authored
  3. Layout only authored
Commits on Mar 3, 2009
  1. @pepeiborra

    Fix #3067: GHCi panics with 'initTc:LIE' while :stepping on code with…

    pepeiborra authored
    … funny types
    The problem is that calls to boxyUnify would panic if the types involved
    contained type functions. 
    It looks like one should wrap these calls with getLIE, although I don't
    really know what I am doing here
  2. Fix Trac #3066: checking argument types in foreign calls authored
    When checking argument types in a foreign call we were stupidly
    looking through foralls.  The fix is easy.
    Merge to 6.10.2
  3. Fix Trac #3057 in deriving Functor authored
    The universal type variables of a data constructor are not necessarily
    identical to those of its parent type constructor, especially if the
    data type is imported.
    While I was at it, I did a significant refactoring to make all this
    traversal of types more comprehensible, by adding the data type
Something went wrong with that request. Please try again.