Skip to content
  • Simon Marlow's avatar
    [project @ 2002-08-20 10:32:48 by simonmar] · a4ac1436
    Simon Marlow authored
    Fix a buglet in CorePrep:  an expression such as
    
    	case __coerce (\x -> e) :: T of { ... }
    
    would be left as is, but the lambda expression should really be
    abstracted as a let (causes a panic later in srtExpr; shown up by
    the dynamic001 test).  There was a missing call to deLam in the case
    for Case expressions in corePrepExprFloat.
    
    In addition, I made a new version of deLam, deLamFloat, which can
    float any bindings generated.  This helps to generate slightly cleaner
    code in the above case (the binding is floated out of the scrutinee).
    
    Also: GC unused imports while I'm here.
    a4ac1436