Skip to content
  • Simon Peyton Jones's avatar
    [project @ 2001-03-19 16:22:51 by simonpj] · a7dff32d
    Simon Peyton Jones authored
    -------------------------------------------------------
    	Be more careful about floating out from  INLINE pragmas
    	-------------------------------------------------------
    
    Given this:
    
    	x = __inline__ (f (g y))
    
    we were floating the (g y) out as a MFE, thus:
    
    	lvl = g y
    	x = __inline__ (f lvl)
    
    This is bad.  The (g y) redex gets outside the __inline__ envelope, 
    and may never get inlined. 
    
    The solution involved a bit of fiddling in SetLevels.
    a7dff32d